프로바
Prova프로바는 프롤로그와 자바를 결합한 오픈소스 프로그래밍 언어다.
설명
프로바는 미들웨어에 사용되는 규칙 기반 스크립팅 시스템이다.이 언어는 자바 함수에 대한 호출을 허용하는 프롤로그 구문을 사용하여 명령적 프로그래밍과 선언적 프로그래밍을 결합한다.이런 식으로 강력한 자바 코드 기반이 역추적과 같은 프롤로그 기능과 결합된다.
프로바는 옌스 디트리히가 개발한 자바 기반의 추론 시스템인 만다락스에서 유래했다.프로바는 적절한 언어 구문, 자바와의 네이티브 구문 통합, 에이전트 메시징 및 대응 규칙을 제공하여 만다락스를 확장한다.이 언어의 개발은 EU 프로젝트 GeneStream과 BioGRID 내에서 제공된 보조금에 의해 지원되었다.프로젝트에서 이 언어는 특히 GoPubMed 시스템에서 분산된 웹 애플리케이션을 위한 규칙 기반 백본으로 사용된다.
Prova의 설계 목표:
- 선언적 프로그래밍과 객체 지향 프로그래밍을 결합한다.
- 논리 및 에이전트 동작을 규칙으로 표시하십시오.
- Java로 작성된 래퍼 또는 Perl과 같은 명령줄 쉘을 통해 데이터 소스에 액세스하십시오.
- 다양한 패키지의 Java API를 규칙으로 액세스 가능하도록 만드십시오.
- Java 런타임 내에서 실행하십시오.
- 신속한 애플리케이션 프로토타이핑 지원
- 분산 에이전트 프로그래밍을 위한 규칙 기반 플랫폼 제공
Prova는 다음 사항이 중요한 경우 데이터 통합 작업에 대한 지원을 목표로 한다.
- 위치 투명도(로컬, 원격, 미러);
- 포맷 투명성(데이터베이스, RDF, XML, HTML, 플랫 파일, 계산 리소스);
- 변화에 대한 복원력(데이터베이스 및 웹 사이트는 자주 변경됨)
- 오픈 소스 및 오픈 소스 기술의 사용.
- 비 IT 전문가의 이해도 및 변경 가능성
- 경제적인 지식 표현
- 추가 기능을 통한 확장성;
- 온톨로지 활용.
Prova는 Xcalia 제품의 핵심 서비스 통합 엔진으로 사용되어왔다. Xcalia 제품은 웹 서비스, TP 모니터 트랜잭션, MQ-Series와 같은 MOM의 메시지, JCA 커넥터가 있는 패키지 애플리케이션, 메인프레임의 레거시 데이터 소스 등 여러 데이터 소스에 걸쳐 효율적인 글로벌 실행 계획을 계산하는 데 사용된다.JCA 커넥터, 데이터 제공자로 간주되는 원격 EJB Java 객체 또는 로컬 Java 객체.Prova는 서비스 지향 아키텍처 구현을 위한 혁신적인 소프트웨어 플랫폼을 제공할 수 있다.
참조
- A. 코즐렌코프와 M.슈뢰더프로바: 생물정보학 시맨틱 웹에 대한 규칙 기반 자바 스크립팅.독일 라이프치히 라이프 사이언스에서의 데이터 통합에 관한 국제 워크숍 E. Rahm 편집자, 2004년 Springer-Verlag 컴퓨터 사이언스 강의 노트 2994, 페이지 17–30.
- N. 콤스와 J.L.아르두인트게임 인공지능의 규칙 대 스크립트, AAAI 2004 게임 AI의 도전에 관한 워크숍, 2004.
- J. 디트리히, A. 코즐렌코프, M. 슈뢰더, G. 바그너.규칙 기반 시맨틱 웹, 전자 상거래 연구 및 응용 프로그램, vol. 2, 4, 페이지 323–338, 2004.
- A. 파슈케, M. 비클러, J. 디트리히.계약 로그:서비스 수준 계약의 규칙 기반 모니터링 및 실행에 대한 접근방식, Int.시맨틱 웹에 대한 규칙 및 규칙 마크업 언어(RuleML 2005), 아일랜드 갤웨이, 2005.
- A. Kozlenkov, R. Fermoza, V. Nigam, L. Royer, G. Dawelbait, M.슈뢰더Prova: 분산 웹 애플리케이션을 위한 규칙 기반 Java 스크립팅: 2006년 뮌헨 웹 워크샵의 생물정보학, 반응성 사례 연구