| By Jon Strande | Article Rating: |
|
| January 1, 2000 12:00 AM EST | Reads: |
4,058 |
Now, as it turns out, about the same time I read that wonderful article I was thinking about building a Rules Engine. So, instead of diving right in and writing one from scratch, I went out and started looking for one on the Web. That is when I came across the JCP Web site and JSR 94, the Java Rule Engine API. More on JSR-94 a little later; first let's learn about the JCP.
The JCP, as defined at www.jcp.org: "The JCP holds the responsibility for the development of Java technology. As an open, inclusive organization of active members and non-member public input, it primarily guides the development and approval of Java technical specifications. Anyone can join the JCP and have a part in its process, and you don't even have to join to contribute as a public participant."
What this means is that any of us can join the process - power to the people! More than just having a say in the process, for $100 any individual can submit a JSR (it does cost more for companies to submit something). The point is that the process is open to anyone, so if you have an idea for an API, you can submit it - visit the following URL for an overview of the process: http://jcp.org/introduction/overview/
The process basically works like this: when a JSR is submitted, first it is reviewed and voted on within 14 days by the EC (Executive Committee. If the committee approves the JSR; the second step occurs: the creation of a community draft and the formation of an expert group. Following the draft and formation of the expert group, there is a community review (30-90 days) and another EC vote (7 days). If it is approved, then the third step is where the JSR team completes the specification and creates a public draft/final release, followed by another review and then a proposed final draft and then a final release. The fourth and last step in the process is the maintenance of the JSR.
Okay, back to the Rules engine. The detail for the Rule Engine API is located at http://jcp.org/jsr/detail/94.jsp. You can get a good bit of information about the Rule Engine API from this page. The format on this page is the same format for all of the JSR's. The page describes the proposed spec, the target platform (J2SE, J2EE, or J2ME), what need the JSR will address, and so on. Near the top of the page is very important section entitled "Status'". This section is ordered with the most recent status at the top. As you can tell from the JSR 94 page, the status just completed the Public Review stage (it closed on September 11, 2002). By clicking on the Public Review link, you are taken to the details of the public review, and there is a link on the page where you can download the specification - after agreeing to the license.
After downloading the specification, you can see that there is plenty of stuff in the 6+mg distribution including a Reference Implementation (RI), the full JavaDoc as well as a PDF of the specification that includes a complete overview of the architecture and example code. The distribution also includes all the third party, open-source libraries that the Rule Engine uses as well as the full Technology Compatibility Kit (TCK) with all of the test code for proving that the RI is compatible with the JDK. Is Java great or what?
Now that we have covered the JCP, JSR 94 - Java Rule Engine API, the only things left for future columns are the numerous other specifications that are currently going through the process. My aim for the weeks and months ahead is to keep you informed of the status of these proposed JSRs, as well as provide some technical details about them.
Please feel free to let me know what you think; I am always available to talk about Java!
Resources:
Java Community Process site - http://www.jcp.org
The Java Community Process(SM) Program - JSRs: Java Specification Requests - Detail (http://jcp.org/jsr/detail/94.jsp)
http://herzberg.ca.sandia.gov/jess/ri_overview.shtml (Missing file from the JSR public review package)
Published January 1, 2000 Reads 4,058
Copyright © 2000 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Jon Strande
Jon Strande is a consultant with Perfect Order in
Harrisburg, PA. Jon is a Java Certified Programmer who
has written several articles on Java and was the past
president of his local JUG.
![]() |
Neil Pitman 10/14/02 12:45:00 AM EDT | |||
And what about IBM Alphaworks.. Read this and tell me what it means. I can play with it but it might not even become a product. And if it does, I have no clue what the real licensing/price will be. I suppose that I could rip off the code, but it still remains IBM's so if it became big and they found out, they'd nail my hide to the wall. No guarantees, no responsibility, complete retention of rights. It would be different if it were a product because then I could see how it works to decide whether to buy it or how to use it. What is the point of this type of opensource? (I asked them, but they did not answer) Note: alphaWorks technologies are early versions of what may, or may not, become IBM products or offerings. These technologies are not generally available and are provided "AS IS" without any warranties, either express or implied. Unless otherwise stated, alphaWorks technologies are provided pursuant to the terms of the IBM alphaWorks license agreement and are licensed only for a 90-day evaluation period. |
||||
![]() |
Neil Pitman 10/14/02 12:28:00 AM EDT | |||
I don't agree that the article was useless, although I too believed it would discuss the rules engine. Good technology is only part of the question. How it becomes standardized it just as important, otherwise you'll just have a mishmash like SourceForge. (Which I respect in many ways, but...) |
||||
![]() |
Jon Strande 10/12/02 08:42:00 AM EDT | |||
Jason, Great points! Thank you for the detailed information and feedback. I really appreciate it! Jon |
||||
![]() |
Jon Strande 10/12/02 08:39:00 AM EDT | |||
David, Thank you for your feedback. I think that the JSR process is very important! I also want to point out that the purpose of the column is to educate people about the process and keep people up to date on some of the specification requests |
||||
![]() |
Rajesh Iyer 10/11/02 12:12:00 PM EDT | |||
I agree. The article was pretty much useless. |
||||
![]() |
David Plass 10/11/02 08:57:00 AM EDT | |||
This article was useless -- it covers the JSR Process -- but who cares about that! I still have to wait until Sun fixes bugs. I wanted to learn about the Rule Engine API, which he didn't "cover" AT ALL! |
||||
![]() |
Jason Brome 10/11/02 08:01:00 AM EDT | |||
The only issue to be wary off when downloading any software - be it Open Source or Reference Implementations from the JCP site - are the terms and conditions of the license. These may be restrictive in terms of packaging, usage within commercial applications, or may, in the case of this rules engine, only allow a 30 day period of internal-use evaluation. Here's an important snippet from the license for JSR-94: 3.1 License Grant. Subject the terms of this Agreement, including, but not limited to this Section 3 and the Restrictions contained in Section 4, below, Original Contributor hereby grants to Recipient a personal, non-exclusive and non-transferable right to use the pre-final version of the Specification Package for internal evaluation and testing purposes only, for a limited period of Thirty (30) days from date of download. 3.2 Limitations. Recipient hereby acknowledge and agree: (i) that delivery of the Specification Package to you does not grant to you any rights to use the Specification Package for any purpose, except such internal evaluation and testing; (ii) that you will not disclose the Specification package to any third party without the prior written consent from the Original Contributor. (iii) that you will stop using and destroy the Specification Package in their entirety within thirty (30) days from the date of the download of the Specification Package. 3.3 Reservation of Rights. All rights not specifically granted to you herein are retained by the Original Contributor. |
||||
- Kindle 2 vs Nook
- Why IBM’s Server Chief Got Busted
- Is Cloud Computing Like Teenage Sex?
- Industry Experts Discuss the State of Cloud Computing
- Performance Tuning Essentials for Java
- Confessions of a Ulitzer Addict
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- It's the Java vs. C++ Shootout Revisited!
- Cloud Computing Can Revitalize Your Career as Software Developer
- IBM Could "Reinvent" Java: Mills
- Oracle & Cloud Computing: Exclusive Q&A with SVP Richard Sarwal
- A Brief History of Cloud Computing
- Kindle 2 vs Nook
- Cloud CEOs, CTOs & SVPs to Speak at 4th International Cloud Computing Expo
- Why IBM’s Server Chief Got Busted
- Is Cloud Computing Like Teenage Sex?
- Industry Experts Discuss the State of Cloud Computing
- Performance Tuning Essentials for Java
- The Difference Between Web Hosting and Cloud Computing
- Cloud Computing Expo: Exclusive Q&A with Yahoo! SVP Cloud Computing
- Ajax in RichFaces 3.3, JSF 2 and RichFaces 4
- Confessions of a Ulitzer Addict
- My Thoughts on Ulitzer
- Tactical Cloud Computing Panel at 1st Annual GovIT Expo
- A Cup of AJAX? Nay, Just Regular Java Please
- Java Developer's Journal Exclusive: 2006 "JDJ Editors' Choice" Awards
- The i-Technology Right Stuff
- JavaServer Faces (JSF) vs Struts
- Rich Internet Applications with Adobe Flex 2 and Java
- Java vs C++ "Shootout" Revisited
- Bean-Managed Persistence Using a Proxy List
- Reporting Made Easy with JasperReports and Hibernate
- Creating a Pet Store Application with JavaServer Faces, Spring, and Hibernate
- What's New in Eclipse?
- Why Do 'Cool Kids' Choose Ruby or PHP to Build Websites Instead of Java?
- i-Technology Predictions for 2007: Where's It All Headed?










































