The document describes a Java API for processing abstract and concrete syntaxes of PSOA RuleML, an object-relational Web rule language. The API allows for the factory-based creation of abstract syntax objects (ASOs) that represent PSOA RuleML expressions, as well as the parsing of XML-based concrete syntax into ASOs. The API provides methods for traversing the structure of the generated ASOs.
RuleML2015: Ontology-Based Multidimensional Contexts with Applications to Qua...RuleML
Data quality assessment and data cleaning are context
dependent activities. Starting from this observation, in previous work
a context model for the assessment of the quality of a database was
proposed. A context takes the form of a possibly virtual database or
a data integration system into which the database under assessment is
mapped, for additional analysis, processing, and quality data extraction.
In this work, we extend contexts with dimensions, and by doing so, multidimensional
data quality assessment becomes possible. At the core of
multidimensional contexts we find ontologies written as Datalog
±
programs
with provably good properties in terms of query answering. We
use this language to represent dimension hierarchies, dimensional constraints,
dimensional rules, and specifying quality data. Query answering
relies on and triggers dimensional navigation, and becomes an important
tool for the extraction of quality data.
RuleML2015: Explanation of proofs of regulatory (non-)complianceusing semanti...RuleML
With recent regulatory advances, modern enterprises have to not only comply with regulations but have to be prepared to provide explanation of proof of (non-)compliance. On top of compliance checking, this necessitates modeling concepts from regulations and enterprise operations so that stakeholder-specific and close to natural language explanations could be generated. We take a step in this direction by using Semantics of Business Vocabulary and Rules to model and map vocabularies of regulations and operations of enterprise. Using these vocabularies and leveraging proof generation abilities of an existing compliance engine, we show how such explanations can be created. Basic natural language explanations that we generate can be easily enriched by adding requisite domain knowledge to the vocabularies.
Big data, with its four main characteristics (Volume, Velocity,
Variety, and Veracity) pose challenges to the gathering, management, analytics, and visualization of events. These very same four characteristics, however, also hold a great promise in unlocking the story behind data. In this talk, we focus on the observation that event creation is guided by processes. For example, GPS information, emitted by buses in an urban setting follow the bus scheduled route. Also, RTLS information about the whereabouts of patients and nurses in a hospital is guided by the predefined schedule of work. With this observation at hand, we thoroughly seek a method for mining, not the data, but rather the rules that guide data creation and show how, by knowing such rules, big data tasks become more efficient and more effective. In particular, we demonstrate how, by knowing the rules that govern event creation, we can detect complex events sooner and make use of historical data to predict future behaviors.
Challenge@RuleML2015 Developing Situation-Aware Applications for Disaster Man...RuleML
In order to enhance interoperability and productivity in the develop-ment of situation-aware applications for disaster management, proper mecha-nisms and guidelines are required. They must address the lack of semantics in modelling emergency situations. In addition, the ever-changing and unpredicta-ble nature of disaster scenarios present challenges for information processing and collaboration. This paper proposes a framework that combines the follow-ing elements: (i) a foundational ontology for temporal conceptualization; (ii) well-founded specifications of structural and behavioral models; (iii) a CEP en-gine based on a distributed rule-based platform for situation management; (iv) a model-driven approach. We illustrate the operation of the framework with a scenario for monitoring tuberculosis epidemy.
RuleML2015: Learning Characteristic Rules in Geographic Information SystemsRuleML
We provide a general framework for learning characterization
rules of a set of objects in Geographic Information Systems (GIS) relying
on the definition of distance quantified paths. Such expressions specify
how to navigate between the different layers of the GIS starting from
the target set of objects to characterize. We have defined a generality
relation between quantified paths and proved that it is monotonous with
respect to the notion of coverage, thus allowing to develop an interactive
and effective algorithm to explore the search space of possible rules. We
describe GISMiner, an interactive system that we have developed based
on our framework. Finally, we present our experimental results from a
real GIS about mineral exploration.
Challenge@RuleML2015 Assessing elements of crime based on an agent simulation...RuleML
Agent-based simulation is a useful tool in terms of assessing human behaviour under the criminal law. We developed a street robbery scenario gen-erator with elements of a criminal law expert system to provide a tool for better understanding complex criminal matters.
RuleML2015: Ontology-Based Multidimensional Contexts with Applications to Qua...RuleML
Data quality assessment and data cleaning are context
dependent activities. Starting from this observation, in previous work
a context model for the assessment of the quality of a database was
proposed. A context takes the form of a possibly virtual database or
a data integration system into which the database under assessment is
mapped, for additional analysis, processing, and quality data extraction.
In this work, we extend contexts with dimensions, and by doing so, multidimensional
data quality assessment becomes possible. At the core of
multidimensional contexts we find ontologies written as Datalog
±
programs
with provably good properties in terms of query answering. We
use this language to represent dimension hierarchies, dimensional constraints,
dimensional rules, and specifying quality data. Query answering
relies on and triggers dimensional navigation, and becomes an important
tool for the extraction of quality data.
RuleML2015: Explanation of proofs of regulatory (non-)complianceusing semanti...RuleML
With recent regulatory advances, modern enterprises have to not only comply with regulations but have to be prepared to provide explanation of proof of (non-)compliance. On top of compliance checking, this necessitates modeling concepts from regulations and enterprise operations so that stakeholder-specific and close to natural language explanations could be generated. We take a step in this direction by using Semantics of Business Vocabulary and Rules to model and map vocabularies of regulations and operations of enterprise. Using these vocabularies and leveraging proof generation abilities of an existing compliance engine, we show how such explanations can be created. Basic natural language explanations that we generate can be easily enriched by adding requisite domain knowledge to the vocabularies.
Big data, with its four main characteristics (Volume, Velocity,
Variety, and Veracity) pose challenges to the gathering, management, analytics, and visualization of events. These very same four characteristics, however, also hold a great promise in unlocking the story behind data. In this talk, we focus on the observation that event creation is guided by processes. For example, GPS information, emitted by buses in an urban setting follow the bus scheduled route. Also, RTLS information about the whereabouts of patients and nurses in a hospital is guided by the predefined schedule of work. With this observation at hand, we thoroughly seek a method for mining, not the data, but rather the rules that guide data creation and show how, by knowing such rules, big data tasks become more efficient and more effective. In particular, we demonstrate how, by knowing the rules that govern event creation, we can detect complex events sooner and make use of historical data to predict future behaviors.
Challenge@RuleML2015 Developing Situation-Aware Applications for Disaster Man...RuleML
In order to enhance interoperability and productivity in the develop-ment of situation-aware applications for disaster management, proper mecha-nisms and guidelines are required. They must address the lack of semantics in modelling emergency situations. In addition, the ever-changing and unpredicta-ble nature of disaster scenarios present challenges for information processing and collaboration. This paper proposes a framework that combines the follow-ing elements: (i) a foundational ontology for temporal conceptualization; (ii) well-founded specifications of structural and behavioral models; (iii) a CEP en-gine based on a distributed rule-based platform for situation management; (iv) a model-driven approach. We illustrate the operation of the framework with a scenario for monitoring tuberculosis epidemy.
RuleML2015: Learning Characteristic Rules in Geographic Information SystemsRuleML
We provide a general framework for learning characterization
rules of a set of objects in Geographic Information Systems (GIS) relying
on the definition of distance quantified paths. Such expressions specify
how to navigate between the different layers of the GIS starting from
the target set of objects to characterize. We have defined a generality
relation between quantified paths and proved that it is monotonous with
respect to the notion of coverage, thus allowing to develop an interactive
and effective algorithm to explore the search space of possible rules. We
describe GISMiner, an interactive system that we have developed based
on our framework. Finally, we present our experimental results from a
real GIS about mineral exploration.
Challenge@RuleML2015 Assessing elements of crime based on an agent simulation...RuleML
Agent-based simulation is a useful tool in terms of assessing human behaviour under the criminal law. We developed a street robbery scenario gen-erator with elements of a criminal law expert system to provide a tool for better understanding complex criminal matters.
Many of the API design opinions found on the web are academic discussions revolving around interpretations of uncertain standards as opposed to what makes sense in the real world. The aim of this presentation is to describe the best common practices for a practical API design for the web applications
Many of the API design opinions found on the web are academic discussions revolving around interpretations of uncertain standards as opposed to what makes sense in the real world. The aim of this presentation is to describe the best common practices for a practical API design for the web applications
Many of the API design opinions found on the web are academic discussions revolving around interpretations of uncertain standards as opposed to what makes sense in the real world. The aim of this presentation is to describe the best common practices for a practical API design for the web applications.
Unlock the full potential of your development process with our presentation on '5 Killer Tools You Need for a Stellar API-First Workflow.' Discover essential tools that streamline and enhance your API development, ensuring efficiency, collaboration, and success in the rapidly evolving world of technology.
Using the RFC 7575 and Models at Runtime for Enabling Autonomic Networking in...Felipe Alencar
The programmable network architectures that emerged in the last decade have opened new ways to enable Autonomic Networks. However, there are several open issues to address before making such a possibility into a feasible reality. For instance, defining network goals, translating them into network
rules, and granting the correct functioning of the network control loop in a self-adaptive manner are examples of complex tasks required to enable an autonomic networking environment. Fortunately, architectures based on the concept of Models at Runtime (MART) provide ways to overcome such complexity. This paper proposes a MART-based framework – using the RFC 7575 as reference (i.e., definitions and design goals for autonomic networking) – to implement autonomic management into a programmable network. The evaluation shows the proposed framework is suitable for satisfying the functional and performance requirements of a simulated network.
Ole Lensmar, co-creator of soapUI and Chief Architect at SmartBear Software, gave this presentation at STARWEST 2012. We are working, he says, in the "Golden Age of APIs."
PiterPy #3 talk (Video: https://youtu.be/bCwSyyygSmM). Some points on RAML, general overview and takeaways based on a real project.
Presented with Dmitry Nazarov https://ru.linkedin.com/in/aspectmkn8rd/en (Part 2, as mentioned in contents)
Toward Automatic Generation of SPARQL result set VisualizationsMarcello Leida
The problem of representing RDF data using charts, dashboards, maps and so on has become pressing, in particular to prove the value of the Semantic Web to enhance the analysis of business data.
State of the art solutions focus on mapping query results to a specific chart type or view and then manually writing the procedure that creates the final dashboard.
Whenever a different visualization model is required, the mapping process needs to be repeated.
Furthermore, even if several different mappings are pre-defined and available to the user there may be several situations which cannot be predicted because they depend on the specific analysis the user wants to carry out.
In this paper we propose a semi-automatic approach that generates various charts from SPARQL queries over data represented as RDF graphs, we introduce and describe the generic approach and present a use case scenario in the context of service monitoring.
Aggregates in Recursion: Issues and SolutionsRuleML
Aggregates are commonplace in database query languages. It is natural to include them also into logic programming. However, doing so raises a number of issues, in particular when aggregates are used in conjunction with recursive definitions. This talk will shed some light on the underlying issues and some of the solutions proposed in the literature so far.
A software agent controlling 2 robot arms in co-operating concurrent tasksRuleML
TeleoR is a major extension of Nilsson’s Teleo-Reactive (TR)
rule based robotic agent programming language. Programs comprise sequences of guarded action rules grouped into parameterised procedures.
The guards are deductive queries to a set of rapidly changing percept and other dynamic facts in the agent’s Belief Store. The actions are either tuples of primitive actions for external robotic resources, to be executed in parallel, or a single call to a TeleoR procedure, which can be a recursive call. The guards form a sub-goal tree routed at the guard of the first rule. When partially instantiated by the arguments of some call, this guard is the goal of the call.
TeleoR extends TR in being typed and higher order, with extra forms of rules that allow finer control over sub-goal achieving task behaviour.
Its Belief Store inference language is a higher order logic+function rule language, QuLog. QuLog also has action rules and primitive actions for updating the Belief Store and sending messages. The action of a TeleoR rule may be a combination of the action of a TR rule and a sequence of
QuLog actions. TeleoR’s most important extension of TR is the concept of task atomic procedures, some arguments of which belong to a special but application specific resource type. This allows the high level programming of multitasking agents using multiple robotic resources. When two or more tasks
need to use overlapping resources their use is alternated between task atomic calls in each task, in such a way that there is no interference, deadlock or task starvation.
This multi-task programming is illustrated by giving the essentials of a program for an agent controlling two robotic arms in multiple block tower assembly tasks. It has been used to control both a Python interactive graphical simulation and a Baxter robot building real block towers, in each case with help or hindrance from a human. The arms move in parallel whenever it can be done without risk of clashing.
More Related Content
Similar to PSOA RuleML API: A Tool for Processing Abstract and Concrete Syntaxes
Many of the API design opinions found on the web are academic discussions revolving around interpretations of uncertain standards as opposed to what makes sense in the real world. The aim of this presentation is to describe the best common practices for a practical API design for the web applications
Many of the API design opinions found on the web are academic discussions revolving around interpretations of uncertain standards as opposed to what makes sense in the real world. The aim of this presentation is to describe the best common practices for a practical API design for the web applications
Many of the API design opinions found on the web are academic discussions revolving around interpretations of uncertain standards as opposed to what makes sense in the real world. The aim of this presentation is to describe the best common practices for a practical API design for the web applications.
Unlock the full potential of your development process with our presentation on '5 Killer Tools You Need for a Stellar API-First Workflow.' Discover essential tools that streamline and enhance your API development, ensuring efficiency, collaboration, and success in the rapidly evolving world of technology.
Using the RFC 7575 and Models at Runtime for Enabling Autonomic Networking in...Felipe Alencar
The programmable network architectures that emerged in the last decade have opened new ways to enable Autonomic Networks. However, there are several open issues to address before making such a possibility into a feasible reality. For instance, defining network goals, translating them into network
rules, and granting the correct functioning of the network control loop in a self-adaptive manner are examples of complex tasks required to enable an autonomic networking environment. Fortunately, architectures based on the concept of Models at Runtime (MART) provide ways to overcome such complexity. This paper proposes a MART-based framework – using the RFC 7575 as reference (i.e., definitions and design goals for autonomic networking) – to implement autonomic management into a programmable network. The evaluation shows the proposed framework is suitable for satisfying the functional and performance requirements of a simulated network.
Ole Lensmar, co-creator of soapUI and Chief Architect at SmartBear Software, gave this presentation at STARWEST 2012. We are working, he says, in the "Golden Age of APIs."
PiterPy #3 talk (Video: https://youtu.be/bCwSyyygSmM). Some points on RAML, general overview and takeaways based on a real project.
Presented with Dmitry Nazarov https://ru.linkedin.com/in/aspectmkn8rd/en (Part 2, as mentioned in contents)
Toward Automatic Generation of SPARQL result set VisualizationsMarcello Leida
The problem of representing RDF data using charts, dashboards, maps and so on has become pressing, in particular to prove the value of the Semantic Web to enhance the analysis of business data.
State of the art solutions focus on mapping query results to a specific chart type or view and then manually writing the procedure that creates the final dashboard.
Whenever a different visualization model is required, the mapping process needs to be repeated.
Furthermore, even if several different mappings are pre-defined and available to the user there may be several situations which cannot be predicted because they depend on the specific analysis the user wants to carry out.
In this paper we propose a semi-automatic approach that generates various charts from SPARQL queries over data represented as RDF graphs, we introduce and describe the generic approach and present a use case scenario in the context of service monitoring.
Aggregates in Recursion: Issues and SolutionsRuleML
Aggregates are commonplace in database query languages. It is natural to include them also into logic programming. However, doing so raises a number of issues, in particular when aggregates are used in conjunction with recursive definitions. This talk will shed some light on the underlying issues and some of the solutions proposed in the literature so far.
A software agent controlling 2 robot arms in co-operating concurrent tasksRuleML
TeleoR is a major extension of Nilsson’s Teleo-Reactive (TR)
rule based robotic agent programming language. Programs comprise sequences of guarded action rules grouped into parameterised procedures.
The guards are deductive queries to a set of rapidly changing percept and other dynamic facts in the agent’s Belief Store. The actions are either tuples of primitive actions for external robotic resources, to be executed in parallel, or a single call to a TeleoR procedure, which can be a recursive call. The guards form a sub-goal tree routed at the guard of the first rule. When partially instantiated by the arguments of some call, this guard is the goal of the call.
TeleoR extends TR in being typed and higher order, with extra forms of rules that allow finer control over sub-goal achieving task behaviour.
Its Belief Store inference language is a higher order logic+function rule language, QuLog. QuLog also has action rules and primitive actions for updating the Belief Store and sending messages. The action of a TeleoR rule may be a combination of the action of a TR rule and a sequence of
QuLog actions. TeleoR’s most important extension of TR is the concept of task atomic procedures, some arguments of which belong to a special but application specific resource type. This allows the high level programming of multitasking agents using multiple robotic resources. When two or more tasks
need to use overlapping resources their use is alternated between task atomic calls in each task, in such a way that there is no interference, deadlock or task starvation.
This multi-task programming is illustrated by giving the essentials of a program for an agent controlling two robotic arms in multiple block tower assembly tasks. It has been used to control both a Python interactive graphical simulation and a Baxter robot building real block towers, in each case with help or hindrance from a human. The arms move in parallel whenever it can be done without risk of clashing.
Port Clearance Rules in PSOA RuleML: From Controlled-English Regulation to Ob...RuleML
The Decision Management (DM) Community Challenge of
March 2016 consisted of creating decision models from ten English Port Clearance Rules inspired by the International Ship and Port Facility Security
Code. Based on an analysis of the moderately controlled English
rules and current online solutions, we formalized the rules in PositionalSlotted,
Object-Applicative (PSOA) RuleML. This resulted in: (1) a
reordering, subgrouping, and explanation of the original rules on the
specialized decision-model expressiveness level of (deontically contextualized)
near-Datalog, non-recursive, near-deterministic, ground-queried,
and non-subpredicating rules; (2) an object-relational PSOA RuleML
rulebase which was complemented by facts to form a knowledge base queried in PSOATransRun for decision-making. Thus, the DM and logical formalizations get connected, which leads to generalized decision models with Hornlog, recursive, non-deterministic, non-ground-queried, and subpredicating rules.
RuleML 2015: Ontology Reasoning using Rules in an eHealth ContextRuleML
Traditionally, nurse call systems in hospitals are rather simple:
patients have a button next to their bed to call a nurse. Which specific
nurse is called cannot be controlled, as there is no extra information
available. This is different for solutions based on semantic knowledge:
if the state of care givers (busy or free), their current position, and for
example their skills are known, a system can always choose the best
suitable nurse for a call. In this paper we describe such a semantic nurse
call system implemented using the EYE reasoner and Notation3 rules.
The system is able to perform OWL-RL reasoning. Additionally, we use
rules to implement complex decision trees. We compare our solution to
an implementation using OWL-DL, the Pellet reasoner, and SPARQL
queries. We show that our purely rule-based approach gives promising
results. Further improvements will lead to a mature product which will
significantly change the organization of modern hospitals.
RuleML 2015: Semantics of Notation3 Logic: A Solution for Implicit Quantifica...RuleML
Since the development of Notation3 Logic, several years have
passed in which the theory has been refined and used in practice by different reasoning engines such as cwm, FuXi or EYE. Nevertheless, a clear model-theoretic definition of its semantics is still missing. This leaves room for individual interpretations and renders it difficult to make clear
statements about its relation to other logics such as DL or FOL or even about such basic concepts as correctness. In this paper we address one of the main open challenges: the formalization of implicit quantification.
We point out how the interpretation of implicit quantifiers differs in two of the above mentioned reasoning engines and how the specification, proposed in the W3C team submission, could be formalized. Our formalization is then put into context by integrating it into a model-theoretic definition of the whole language. We finish our contribution by arguing why universal quantification should be handled differently than currently
prescribed.
Rule Generalization Strategies in Incremental Learning of Disjunctive ConceptsRuleML
Symbolic Machine Learning systems and applications, especially when applied to real-world domains, must face the problem of concepts that cannot be captured by a single definition, but require several alternate definitions, each of which covers part of the full concept extension. This problem is particularly relevant for incremental systems, where progressive covering approaches are not applicable, and the learning and refinement of the various definitions is interleaved during the learning phase. In these systems, not only the learned model depends on the order in which the examples are provided, but it also depends on
the choice of the specific definition to be refined. This paper proposes different strategies for determining the order in which the alternate definitions of a concept should be considered in a generalization step, and
evaluates their performance on a real-world domain dataset.
RuleML 2015 Constraint Handling Rules - What Else?RuleML
Constraint Handling Rules (CHR) is both a versatile theoretical formalism based on logic and an efficient practical high-level programming language based on rules and constraints.
Procedural knowledge is often expressed by if-then rules, events and actions are related by reaction rules, change is expressed by update rules. Algorithms are often specified using inference rules, rewrite rules, transition rules, sequents, proof rules, or logical axioms. All these kinds of rules can be directly written in CHR. The clean logical semantics of CHR facilitates non-trivial program analysis and transformation. About a dozen implementations of CHR exist in Prolog, Haskell, Java, Javascript and C. Some of them allow to apply millions of rules per second. CHR is also available as WebCHR for online experimentation with more than 40 example programs. More than 200 academic and industrial projects worldwide use CHR, and about 2000 research papers reference it.
RuleML2015 The Herbrand Manifesto - Thinking Inside the Box RuleML
The traditional semantics for First Order Logic (sometimes called Tarskian semantics) is based on the notion of interpretations of constants. Herbrand semantics is an alternative semantics based directly on truth assignments for ground sentences rather than interpretations of constants. Herbrand semantics is simpler and more intuitive than Tarskian semantics; and, consequently, it is easier to teach and learn. Moreover, it is more expressive. For example, while it is not possible to finitely axiomatize integer arithmetic with Tarskian semantics, this can be done easily with Herbrand Semantics. The downside is a loss of some common logical properties, such as compactness and completeness. However, there is no loss of inferential power. Anything that can be proved according to Tarskian semantics can also be proved according to Herbrand semantics. In this presentation, we define Herbrand semantics; we look at the implications for research on logic and rules systems and automated reasoning; and and we assess the potential for popularizing logic.
Industry@RuleML2015: Norwegian State of Estate A Reporting Service for the St...RuleML
Data distribution
•Public and private
•Data complexity
•Rich in attributes and location based
•Time dimension
•Example of data model from the Norwegian Mapping Authority
Datalog+-Track Introduction & Reasoning on UML Class Diagrams via Datalog+-RuleML
UML class diagrams (UCDs) are a widely adopted formalism
for modeling the intensional structure of a software system. Although
UCDs are typically guiding the implementation of a system, it is common
in practice that developers need to recover the class diagram from an
implemented system. This process is known as reverse engineering. A
fundamental property of reverse engineered (or simply re-engineered)
UCDs is consistency, showing that the system is realizable in practice.
In this work, we investigate the consistency of re-engineered UCDs, and
we show is pspace-complete. The upper bound is obtained by exploiting
algorithmic techniques developed for conjunctive query answering under
guarded Datalog+/-, that is, a key member of the Datalog+/- family
of KR languages, while the lower bound is obtained by simulating the
behavior of a polynomial space Turing machine.
RuleML2015: Binary Frontier-guarded ASP with Function SymbolsRuleML
It has been acknowledged that emerging Web applications
require features that are not available in standard rule languages like
Datalog or Answer Set Programming (ASP), e.g., they are not powerful
enough to deal with anonymous values (objects that are not explicitly
mentioned in the data but whose existence is implied by the background
knowledge). In this paper, we introduce a new rule language based on
ASP extended with function symbols, which can be used to reason about
anonymous values. In particular, we define binary frontier-guarded programs
(BFG programs) that allow for disjunction, function symbols, and
negation under the stable model semantics. In order to ensure decidability,
BFG programs are syntactically restricted by allowing at most
binary predicates and by requiring rules to be frontier-guarded. BFG programs
are expressive enough to simulate ontologies expressed in popular
Description Logics (DLs), capture their recent non-monotonic extensions,
and can simulate conjunctive query answering over many standard DLs.
We provide an elegant automata-based algorithm to reason in BFG programs,
which yields a 3ExpTime upper bound for reasoning tasks like
deciding consistency or cautious entailment. Due to existing results, these
problems are known to be 2ExpTime-hard.
RuleML2015: API4KP Metamodel: A Meta-API for Heterogeneous Knowledge PlatformsRuleML
API4KP (API for Knowledge Platforms) is a standard
development effort that targets the basic administration services as
well as the retrieval, modification and processing of expressions in
machine-readable languages, including but not limited to knowledge
representation and reasoning (KRR) languages, within heterogeneous
(multi-language, multi-nature) knowledge platforms. KRR languages of
concern in this paper include but are not limited to RDF(S), OWL,
RuleML and Common Logic, and the knowledge platforms may support
one or several of these. Additional languages are integrated using mappings
into KRR languages. A general notion of structure for knowledge
sources is developed using monads. The presented API4KP metamodel,
in the form of an OWL ontology, provides the foundation of an abstract
syntax for communications about knowledge sources and environments,
including a classification of knowledge source by mutability, structure,
and an abstraction hierarchy as well as the use of performatives (inform,
query, ...), languages, logics, dialects, formats and lineage. Finally, the
metamodel provides a classification of operations on knowledge sources
and environments which may be used for requests (message-passing).
RuleML2015: Rule-Based Exploration of Structured Data in the BrowserRuleML
We present Dexter, a browser-based, domain-independent
structured-data explorer for users. Dexter enables users to explore data
from multiple local and Web-accessible heterogeneous data sources such
as files, Web pages, APIs and databases in the form of tables. Dexter’s
users can also compute tables from existing ones as well as validate
the tables (base or computed) through declarative rules. Dexter enables
users to perform ad hoc queries over their tables with higher expressivity
than that is supported by the underlying data sources. Dexter evaluates
a user’s query on the client side while evaluating sub-queries on remote
sources whenever possible. Dexter also allows users to visualize and share
tables, and export (e.g., in JSON, plain XML, and RuleML) tables along
with their computation rules. Dexter has been tested for a variety of data
sets from domains such as government and apparel manufacturing. Dexter
is available online at http://dexter.stanford.edu.
RuleML2015: Compact representation of conditional probability for rule-based...RuleML
Context-aware systems gained huge popularity in recent
years due to rapid evolution of personal mobile devices. Equipped with
variety of sensors, such devices are sources of a lot of valuable information
that allows the system to act in an intelligent way. However, the
certainty and presence of this information may depend on many factors
like measurement accuracy or sensor availability. Such a dynamic
nature of information may cause the system not to work properly or
not to work at all. To allow for robustness of the context-aware system
an uncertainty handling mechanism should be provided with it. Several
approaches were developed to solve uncertainty in context knowledge
bases, including probabilistic reasoning, fuzzy logic, or certainty
factors. In this paper, we present a representation method that combines
strengths of rules based on the attributive logic and Bayesian networks.
Such a combination allows efficiently encode conditional probability distribution
of random variables into a reasoning structure called XTT2.
This provides a method for building hybrid context-aware systems that
allows for robust inference in uncertain knowledge bases.
RuleML2015: Using Substitutive Itemset Mining Framework for Finding Synonymou...RuleML
Over the last two decades frequent itemset and association
rule mining has attracted huge attention from the scientific community
which resulted in numerous publications, models, algorithms, and optimizations
of basic frameworks. In this paper we introduce an extension
of the frequent itemset framework, called substitutive itemsets. Substitutive
itemsets allow to discover equivalences between items, i.e., they
represent pairs of items that can be used interchangeably in many contexts.
In the paper we present basic notions pertaining to substitutive
itemsets, describe the implementation of the proposed method available
as a RapidMiner plugin, and illustrate the use of the framework for mining
substitutive object properties in the Linked Data.
RuleML2015: User Extensible System to Identify Problems in OWL Ontologies and...RuleML
The Semantic Web uses ontologies to associate meaning to
Web content so machines can process it. One inherent problem to this
approach is that, as its popularity increases, there is an ever growing
number of ontologies available to be used, leading to difficulties in
choosing appropriate ones. With that in mind, we created a system that
allows users to evaluate ontologies/rules. It is composed by the Metadata
description For Ontologies/Rules (MetaFOR), an ontology in OWL, and
a tool to convert any OWL ontology to MetaFOR. With the MetaFOR
version of an ontology, it is possible to use SWRL rules to identify anomalies
in it. These can be problems already documented in the literature or
user defined ones. SWRL is familiar to users, so it is easier to define new
project specific anomalies. We present a case study where the system
detects 9 problems, from the literature, and two user defined ones
RuleML2015: Representing Flexible Role-Based Access Control Policies Using Ob...RuleML
Access control systems often use rule based frameworks to
express access policies. These frameworks not only simplify the representation
of policies, but also provide reasoning capabilities that can be used
to verify the policies. In this work, we propose to use defeasible reasoning
to simplify the specification of role-based access control policies and
make them modular and more robust. We use the Flora-2 rule-based
reasoner for representing a role-based access control policy. Our early
experiments show that the wide range of features provided by Flora-2
greatly simplifies the task of building the requisite ontologies and the
reasoning components for such access control systems.
RuleML2015: Rule Generalization Strategies in Incremental Learning of Disjunc...RuleML
Symbolic Machine Learning systems and applications, especially
when applied to real-world domains, must face the problem of
concepts that cannot be captured by a single definition, but require several
alternate definitions, each of which covers part of the full concept
extension. This problem is particularly relevant for incremental systems,
where progressive covering approaches are not applicable, and the learning
and refinement of the various definitions is interleaved during the
learning phase. In these systems, not only the learned model depends
on the order in which the examples are provided, but it also depends on
the choice of the specific definition to be refined. This paper proposes
different strategies for determining the order in which the alternate definitions
of a concept should be considered in a generalization step, and
evaluates their performance on a real-world domain dataset.
UiPath Test Automation using UiPath Test Suite series, part 5DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 5. In this session, we will cover CI/CD with devops.
Topics covered:
CI/CD with in UiPath
End-to-end overview of CI/CD pipeline with Azure devops
Speaker:
Lyndsey Byblow, Test Suite Sales Engineer @ UiPath, Inc.
Communications Mining Series - Zero to Hero - Session 1DianaGray10
This session provides introduction to UiPath Communication Mining, importance and platform overview. You will acquire a good understand of the phases in Communication Mining as we go over the platform with you. Topics covered:
• Communication Mining Overview
• Why is it important?
• How can it help today’s business and the benefits
• Phases in Communication Mining
• Demo on Platform overview
• Q/A
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfPeter Spielvogel
Building better applications for business users with SAP Fiori.
• What is SAP Fiori and why it matters to you
• How a better user experience drives measurable business benefits
• How to get started with SAP Fiori today
• How SAP Fiori elements accelerates application development
• How SAP Build Code includes SAP Fiori tools and other generative artificial intelligence capabilities
• How SAP Fiori paves the way for using AI in SAP apps
Climate Impact of Software Testing at Nordic Testing DaysKari Kakkonen
My slides at Nordic Testing Days 6.6.2024
Climate impact / sustainability of software testing discussed on the talk. ICT and testing must carry their part of global responsibility to help with the climat warming. We can minimize the carbon footprint but we can also have a carbon handprint, a positive impact on the climate. Quality characteristics can be added with sustainability, and then measured continuously. Test environments can be used less, and in smaller scale and on demand. Test techniques can be used in optimizing or minimizing number of tests. Test automation can be used to speed up testing.
Epistemic Interaction - tuning interfaces to provide information for AI supportAlan Dix
Paper presented at SYNERGY workshop at AVI 2024, Genoa, Italy. 3rd June 2024
https://alandix.com/academic/papers/synergy2024-epistemic/
As machine learning integrates deeper into human-computer interactions, the concept of epistemic interaction emerges, aiming to refine these interactions to enhance system adaptability. This approach encourages minor, intentional adjustments in user behaviour to enrich the data available for system learning. This paper introduces epistemic interaction within the context of human-system communication, illustrating how deliberate interaction design can improve system understanding and adaptation. Through concrete examples, we demonstrate the potential of epistemic interaction to significantly advance human-computer interaction by leveraging intuitive human communication strategies to inform system design and functionality, offering a novel pathway for enriching user-system engagements.
Dr. Sean Tan, Head of Data Science, Changi Airport Group
Discover how Changi Airport Group (CAG) leverages graph technologies and generative AI to revolutionize their search capabilities. This session delves into the unique search needs of CAG’s diverse passengers and customers, showcasing how graph data structures enhance the accuracy and relevance of AI-generated search results, mitigating the risk of “hallucinations” and improving the overall customer journey.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
Unlocking Productivity: Leveraging the Potential of Copilot in Microsoft 365, a presentation by Christoforos Vlachos, Senior Solutions Manager – Modern Workplace, Uni Systems
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
20240605 QFM017 Machine Intelligence Reading List May 2024
PSOA RuleML API: A Tool for Processing Abstract and Concrete Syntaxes
1. Introduction
The API Structure and Functionality
Conclusion and Future Work
PSOA RuleML API: A Tool for Processing
Abstract and Concrete Syntaxes
Mohammad Sadnan Al Manir1 Alexandre Riazanov1
Harold Boley2 Christopher J.O. Baker1
1 Department of Computer Science and Applied Statistics
University of New Brunswick, Saint John, Canada
2 Information and Communications Technologies
National Research Council Canada
The 6th International Symposium on Rules: Research Based
and Industry Focused (RuleML-2012)
Sadnan Al Manir PSOA RuleML API
2. Introduction
The API Structure and Functionality
Conclusion and Future Work
Outline
1 Introduction
PSOA RuleML and the API
Motivation
2 The API Structure and Functionality
Package Organization
Construction of Abstract Syntax Objects
Abstract Syntax Structure Traversal
Parsing and Rendering
3 Conclusion and Future Work
Sadnan Al Manir PSOA RuleML API
3. Introduction
PSOA RuleML and the API
The API Structure and Functionality
Motivation
Conclusion and Future Work
Outline
1 Introduction
PSOA RuleML and the API
Motivation
2 The API Structure and Functionality
Package Organization
Construction of Abstract Syntax Objects
Abstract Syntax Structure Traversal
Parsing and Rendering
3 Conclusion and Future Work
Sadnan Al Manir PSOA RuleML API
4. Introduction
PSOA RuleML and the API
The API Structure and Functionality
Motivation
Conclusion and Future Work
PSOA RuleML
An object-relational Web rule language
Unlike F-logic and W3C RIF, PSOA RuleML defines
Objects (frames) uniformly with relations
Permits relation applications with
Optional Object IDentifiers (OIDs) and
Positional and Slotted arguments
Allows positional-slotted object-applicative (psoa) terms and
rules
Sadnan Al Manir PSOA RuleML API
5. Introduction
PSOA RuleML and the API
The API Structure and Functionality
Motivation
Conclusion and Future Work
PSOA Rules Exemplified
Example (Rule-defined anonymous family frame)
Group is used to collect a rule and two facts. Forall quantifier
declares original universal argument variables and generated
universal OID variables ?2, ?3, ?4. Infix :- separates conclusion
from premises of rule, which derives anonymous/existential family
frame from married relation And from kid relation of husb Or
wife (the left-hand side is objectified on the right).
Group ( Group (
Forall ?Hu ?Wi ?Ch ( Forall ?Hu ?Wi ?Ch ?2 ?3 ?4 (
Exists ?1 (
family(husb->?Hu wife->?Wi child->?Ch) :- ?1#family(husb->?Hu wife->?Wi child->?Ch)) :-
And(married(?Hu ?Wi) And(?2#married(?Hu ?Wi)
Or(kid(?Hu ?Ch) kid(?Wi ?Ch))) ) Or(?3#kid(?Hu ?Ch) ?4#kid(?Wi ?Ch))) )
married(Joe Sue) _1#married(Joe Sue)
kid(Sue Pete) _2#kid(Sue Pete)
) )
Sadnan Al Manir PSOA RuleML API
6. Introduction
PSOA RuleML and the API
The API Structure and Functionality
Motivation
Conclusion and Future Work
The API at a Glance
Open-source at
http://code.google.com/p/psoa-ruleml-api/
Allows factory-based Abstract Syntax Object (ASO) creation
and manipulation
Parses XML-based concrete PSOA RuleML syntax
Translates ASOs into RIF-like Presentation Syntax (PS)
Sadnan Al Manir PSOA RuleML API
7. Introduction
PSOA RuleML and the API
The API Structure and Functionality
Motivation
Conclusion and Future Work
Outline
1 Introduction
PSOA RuleML and the API
Motivation
2 The API Structure and Functionality
Package Organization
Construction of Abstract Syntax Objects
Abstract Syntax Structure Traversal
Parsing and Rendering
3 Conclusion and Future Work
Sadnan Al Manir PSOA RuleML API
8. Introduction
PSOA RuleML and the API
The API Structure and Functionality
Motivation
Conclusion and Future Work
Motivation
Java API facilitates creating software using PSOA
Enables PSOA adoption
Creating Rule-based applications such as
Rule authoring
Rule engines
To be used in a Clinical Intelligence project (HAIKU)
Semantic modeling of Relational Databases
Automatic generation of Semantic Web services
Sadnan Al Manir PSOA RuleML API
9. Package Organization
Introduction
Construction of Abstract Syntax Objects
The API Structure and Functionality
Abstract Syntax Structure Traversal
Conclusion and Future Work
Parsing and Rendering
Outline
1 Introduction
PSOA RuleML and the API
Motivation
2 The API Structure and Functionality
Package Organization
Construction of Abstract Syntax Objects
Abstract Syntax Structure Traversal
Parsing and Rendering
3 Conclusion and Future Work
Sadnan Al Manir PSOA RuleML API
10. Package Organization
Introduction
Construction of Abstract Syntax Objects
The API Structure and Functionality
Abstract Syntax Structure Traversal
Conclusion and Future Work
Parsing and Rendering
API Components
Two main components
Classes for creating and traversal of ASOs
AbstractSyntax: Top level class containing interfaces for
ASOs
DefaultAbstractSyntax: Implements these interfaces
Classes for parsing and rendering
Validator: Validates input, calls rendering methods
Parser: Parses PSOA/XML input using Java Architecture for
XML Binding (JAXB)
Sadnan Al Manir PSOA RuleML API
11. Package Organization
Introduction
Construction of Abstract Syntax Objects
The API Structure and Functionality
Abstract Syntax Structure Traversal
Conclusion and Future Work
Parsing and Rendering
The API Structure
Figure: Main Components of the API Structure
Sadnan Al Manir PSOA RuleML API
12. Package Organization
Introduction
Construction of Abstract Syntax Objects
The API Structure and Functionality
Abstract Syntax Structure Traversal
Conclusion and Future Work
Parsing and Rendering
Outline
1 Introduction
PSOA RuleML and the API
Motivation
2 The API Structure and Functionality
Package Organization
Construction of Abstract Syntax Objects
Abstract Syntax Structure Traversal
Parsing and Rendering
3 Conclusion and Future Work
Sadnan Al Manir PSOA RuleML API
13. Package Organization
Introduction
Construction of Abstract Syntax Objects
The API Structure and Functionality
Abstract Syntax Structure Traversal
Conclusion and Future Work
Parsing and Rendering
How to Create a Factory?
Code Snippet
// Initialize Validator
Validator v = new Validator();
// Initialize Parser
Parser p = new Parser();
// PSOA/XML input file to be parsed
File file = new File("family.psoa");
// Factory creation
DefaultAbstractSyntax absSynFactory = new DefaultAbstractSyntax();
// Parsing of input document using JAXB
AbstractSyntax.Document doc = p.parse(file, absSynFactory);
Sadnan Al Manir PSOA RuleML API
14. Package Organization
Introduction
Construction of Abstract Syntax Objects
The API Structure and Functionality
Abstract Syntax Structure Traversal
Conclusion and Future Work
Parsing and Rendering
Construction of Facts
CreateX methods are used for ASO construction
A fact is of type Atomic (e,g., Atom, Equal, Subclass)
Example of an Atom _1#married(Joe Sue)
- Joe and Sue are in a married relation with the OID _1
Creating Constants _1, married, Joe and Sue
Const_Constshort const_1 = absSynFactory.createConst_Constshort("_1")
Const_Constshort const_married = absSynFactory
.createConst_Constshort("married")
Const_Constshort const_Joe = absSynFactory
.createConst_Constshort("Joe")
Const_Constshort const_Sue = absSynFactory
.createConst_Constshort("Sue")
Sadnan Al Manir PSOA RuleML API
15. Package Organization
Introduction
Construction of Abstract Syntax Objects
The API Structure and Functionality
Abstract Syntax Structure Traversal
Conclusion and Future Work
Parsing and Rendering
Construction of Facts (Cont’d)
Adding positional terms const_Joe and const_Sue in a list of
tuples
LinkedList<AbstractSyntax.Term> tuplesList
= new LinkedList<AbstractSyntax.Term>();
// iterate through all positional terms
for (Object obj : tuple.getTERM()) {
// check if the term is a variable
if (obj instanceof Var) {
tuplesList.addLast((Var) obj);
}
// check if the term is a constant
else if (obj instanceof Const) { // as a refinement of Const, the
tuplesList.addLast((Const) obj); // short constants const_Joe and
} // const_Sue are added to tuplesList
else if (obj instanceof Expr) {
tuplesList.addLast((Expr) obj);
}
...
}
Sadnan Al Manir PSOA RuleML API
16. Package Organization
Introduction
Construction of Abstract Syntax Objects
The API Structure and Functionality
Abstract Syntax Structure Traversal
Conclusion and Future Work
Parsing and Rendering
Construction of Facts (Cont’d)
Creating a list of tuples const_Joe and const_Sue
Tuple tuples = absSynFactory.createTuple(tuplesList)
Assembling _1, married and tuples into a psoaTerm
// null indicates absence of slots
Psoa psoaTerm = absSynFactory
.createPsoa(const_1, const_married, tuples, null)
Creating a fact of type Atom
Atom atom = absSynFactory.createAtom(psoaTerm)
CreateSubclass, CreateEqual methods are used for facts of
type Subclass, Equality
Sadnan Al Manir PSOA RuleML API
17. Package Organization
Introduction
Construction of Abstract Syntax Objects
The API Structure and Functionality
Abstract Syntax Structure Traversal
Conclusion and Future Work
Parsing and Rendering
Construction of Rules
A Rule contains Condition and Conclusion
The Condition of the following Rule consists of
A Conjunction of the atomic formula
- ?2#married(?Hu ?Wi) and
Disjunction of two atomic formulas
- ?3#kid(?Hu ?Ch) and ?4#kid(?Wi ?Ch)
Forall ?Hu ?Wi ?Ch ?2 ?3 ?4 (
Exists ?1 (
?1#family(husb->?Hu wife->?Wi child->?Ch)) :-
And(?2#married(?Hu ?Wi) Or(?3#kid(?Hu ?Ch) ?4#kid(?Wi ?Ch)))
)
Sadnan Al Manir PSOA RuleML API
18. Package Organization
Introduction
Construction of Abstract Syntax Objects
The API Structure and Functionality
Abstract Syntax Structure Traversal
Conclusion and Future Work
Parsing and Rendering
Construction of Rules (Cont’d)
Creating Condition formula
And(?2#married(?Hu ?Wi) Or(?3#kid(?Hu ?Ch) ?4#kid(?Wi ?Ch)))
Atom ?3#kid(?Hu ?Ch) as atomOr_1
Var var_3 = absSynFactory.createVar("3")
...
Tuple tuples = absSynFactory.createTuple(tuplesList_1)
Psoa psoaTerm_1 = absSynFactory
.createPsoa(var_3, const_kid, tuples, null)
Atom atomOr_1 = absSynFactory.createAtom(psoaTerm_1)
Atom ?4#kid(?Wi ?Ch) as atomOr_2
Atom atomOr_2 = absSynFactory.createAtom(psoaTerm_2)
Disjunction of two Atoms as a formulaOrList
Formula_Or formula_Or = absSynFactory.createFormula_Or(formulaOrList)
Sadnan Al Manir PSOA RuleML API
19. Package Organization
Introduction
Construction of Abstract Syntax Objects
The API Structure and Functionality
Abstract Syntax Structure Traversal
Conclusion and Future Work
Parsing and Rendering
Construction of Rules (Cont’d)
Creating Condition formula
And(?2#married(?Hu ?Wi) Or(?3#kid(?Hu ?Ch) ?4#kid(?Wi ?Ch)))
Atom ?2#married(?Hu ?Wi) as atom_And
Atom atom_And = absSynFactory.createAtom(psoaTerm_3)
Conjunction of atom_And and formula_Or as a formulaAndList
Formula_And formula_And = absSynFactory
.createFormula_And(formulaAndList)
Sadnan Al Manir PSOA RuleML API
20. Package Organization
Introduction
Construction of Abstract Syntax Objects
The API Structure and Functionality
Abstract Syntax Structure Traversal
Conclusion and Future Work
Parsing and Rendering
Construction of Rules (Cont’d)
Creating Conclusion formula
Exists ?1 (
?1#family(husb->?Hu wife->?Wi child->?Ch))
psoa term from variables, constants, 3 slots as a slotsList
Var var_1 = absSynFactory.createVar("1")
...
Slot slot_1 = absSynFactory.createSlot(const_husb, var_Hu)
Slot slot_2 = absSynFactory.createSlot(const_wife, var_Wi
Slot slot_3 = absSynFactory.createSlot(const_child, var_Ch)
Psoa psoa = absSynFactory.createPsoa(var_1, const_family, null,slotsList)
Conclusion with existentially quantified variable ?1 as a
varsListExists
Head rule_head = absSynFactory.createHead(varsListExists, atom_head)
Sadnan Al Manir PSOA RuleML API
21. Package Organization
Introduction
Construction of Abstract Syntax Objects
The API Structure and Functionality
Abstract Syntax Structure Traversal
Conclusion and Future Work
Parsing and Rendering
Construction of Rules (Cont’d)
Creating Rule with the Condition and Conclusion formula
Forall ?Hu ?Wi ?Ch ?2 ?3 ?4 (
Exists ?1 (
?1#family(husb->?Hu wife->?Wi child->?Ch)) :-
And(?2#married(?Hu ?Wi) Or(?3#kid(?Hu ?Ch) ?4#kid(?Wi ?Ch)))
)
Implication from Condition and Conclusion
Implies implication = absSynFactory.createImplies(rule_head,formula_And)
Clause (Either an Implication or an Atomic formula)
Clause clause = absSynFactory.createClause(implication)
Rule with universally quantified variables as a varsListUniv
Rule rule = absSynFactory.createRule(varsListUniv, clause)
Sadnan Al Manir PSOA RuleML API
22. Package Organization
Introduction
Construction of Abstract Syntax Objects
The API Structure and Functionality
Abstract Syntax Structure Traversal
Conclusion and Future Work
Parsing and Rendering
Outline
1 Introduction
PSOA RuleML and the API
Motivation
2 The API Structure and Functionality
Package Organization
Construction of Abstract Syntax Objects
Abstract Syntax Structure Traversal
Parsing and Rendering
3 Conclusion and Future Work
Sadnan Al Manir PSOA RuleML API
23. Package Organization
Introduction
Construction of Abstract Syntax Objects
The API Structure and Functionality
Abstract Syntax Structure Traversal
Conclusion and Future Work
Parsing and Rendering
Traversal of ASOs
Data structures representing PSOA expressions can be
processed by simple recursive traversal
All components of the structures can be accessed by the getX
accessor methods
General classes (see earlier Figure)
are Sentence, Formula, Atomic, Term, Const, and Expr
contain isX methods to recognize the specific instance types
Specific classes of particular instances have to be identified by
using instanceof
Both ways are legitimate
e.g., for an Atomic formula, an isX method in Atomic class
needs to recognize if the instance is of type Atom, Subclass,
or Equal object
Sadnan Al Manir PSOA RuleML API
24. Package Organization
Introduction
Construction of Abstract Syntax Objects
The API Structure and Functionality
Abstract Syntax Structure Traversal
Conclusion and Future Work
Parsing and Rendering
Traversal of ASOs (Cont’d)
isEqual method in general class Atomic
recognizes the instance of Equality Atom
?cost = "47.5"∧∧ xs:float
immediately, makes a cast as the instance type Equal
calls getLeft and getRight methods
Traversing Equality Atom ?cost = "47.5"∧∧ xs:float
assert this instanceof AbstractSyntax.Equal
return (AbstractSyntax.Equal) this
...
AbstractSyntax.Term getLeft()
AbstractSyntax.Term getRight()
The methods getLeft (?cost) and getRight
("47.5"∧∧ xs:float) refer to instances of other general class
Term
which uses isVar, isConstLiteral, isConstShort to recognize
variables and constants
Sadnan Al Manir PSOA RuleML API
25. Package Organization
Introduction
Construction of Abstract Syntax Objects
The API Structure and Functionality
Abstract Syntax Structure Traversal
Conclusion and Future Work
Parsing and Rendering
Outline
1 Introduction
PSOA RuleML and the API
Motivation
2 The API Structure and Functionality
Package Organization
Construction of Abstract Syntax Objects
Abstract Syntax Structure Traversal
Parsing and Rendering
3 Conclusion and Future Work
Sadnan Al Manir PSOA RuleML API
26. Package Organization
Introduction
Construction of Abstract Syntax Objects
The API Structure and Functionality
Abstract Syntax Structure Traversal
Conclusion and Future Work
Parsing and Rendering
Parsing and Rendering as Presentation Syntax
Parsing: JAXB is used to generate the XML Parser
which creates Java classes by binding a schema
Rendering: PSOA/XML Fact transformed into PSOA/PS
<Atom>
<Member>
<instance>
<Const type="&psoa;iri">inst1</Const>
</instance>
<class>
<Const type="&psoa;iri">family</Const>
</class>
</Member>
inst1#family(Joe Sue Child->Pete)
<tuple>
<Const type="&psoa;iri">Joe</Const>
<Const type="&psoa;iri">Sue</Const>
</tuple>
<slot>
<Const type="&psoa;iri">Child</Const>
<Const type="&psoa;iri">Pete</Const>
</slot>
</Atom>
Sadnan Al Manir PSOA RuleML API
27. Introduction
The API Structure and Functionality
Conclusion and Future Work
Summary
Inspired by the OWL API and Jena API
The API is open-source and hosted in [1]
Currently the API renders PSOA/XML only as PSOA/PS
The reference translator PSOA2TPTP [2] is pursued in a
companion effort
Interoperates PSOA RuleML with TPTP Reasoners
Sadnan Al Manir PSOA RuleML API
28. Introduction
The API Structure and Functionality
Conclusion and Future Work
Future Work
Translation of ASOs back to PSOA/XML
Merge the API with PSOA2TPTP
Deploy for semantic modeling of Relational Databases in a
Clinical Intelligence project
Semantic mapping of Relational Databases to Ontologies
Sadnan Al Manir PSOA RuleML API
29. Introduction
The API Structure and Functionality
Conclusion and Future Work
References
[1] Al Manir, M.S., Riazanov, A., Boley, H. and Baker, C.J.O.
PSOA RuleML API: A Tool for Processing Abstract and
Concrete Syntaxes
http://code.google.com/p/psoa-ruleml-api/.
[2] Zou, G., Peter-Paul, R., Boley, H. and Riazanov, A.
PSOA2TPTP: A Reference Translator for Interoperating
PSOA RuleML with TPTP Reasoners.
In RuleML-2012 proceedings
Sadnan Al Manir PSOA RuleML API