Post on 22-May-2020
OntoMaven Repositories and OMG API4KP
Ralph Schäfermeier Adrian PaschkeFreie Universität Berlin
Berlin Semantic Web MeetupTerminology Servers and Knowledge Repositories. Dec 2, 2015
Outline
1 OMG API4KP – An API for Knowledge PlatformsScope of the StandardScenario: Semantic Annotation and Discovery of Biodiversity DataThe API4KP MetamodelFoundations: MonadsArchitecture Styles
2 Repositories with OntoMavenMotivationArchitectureSelected Plug-InsThe Terminology Server Scenario with Distributed KnowledgeRepositories
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 2
Outline
1 OMG API4KP – An API for Knowledge PlatformsScope of the StandardScenario: Semantic Annotation and Discovery of Biodiversity DataThe API4KP MetamodelFoundations: MonadsArchitecture Styles
2 Repositories with OntoMavenMotivationArchitectureSelected Plug-InsThe Terminology Server Scenario with Distributed KnowledgeRepositories
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 3
A Meta-API for Knowledge (Reasoning)Platforms (KPs)
A Meta-API is a platform-independentmodel (PIM) for a family of APIs inspecific languages, also called PSMs(platform-specific models).
API4KP provides aPIM for the externalAPIs of KPs.
Figure: A Monolithic KP Architecture.
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 4
Languages in Scope
Knowledge Representation and Reasoning LanguagesResource Description Framework (RDF)RDF Schema (RDFS)Web Ontology Language (OWL)Common Logic (CL)Event-Condition-Action RuleML (ECA). . .
Data Representation LanguagesExtensible Messaging and Presence Protocol (XMPP)JSON. . .
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 6
Outline
1 OMG API4KP – An API for Knowledge PlatformsScope of the StandardScenario: Semantic Annotation and Discovery of Biodiversity DataThe API4KP MetamodelFoundations: MonadsArchitecture Styles
2 Repositories with OntoMavenMotivationArchitectureSelected Plug-InsThe Terminology Server Scenario with Distributed KnowledgeRepositories
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 7
GFBio Terminology Server
API4KP
API4KP
SKOS RDF
OWL
Web Services Client
HTTP Server
Semantic Web Repository(Virtuoso)
HTTP request
Serialization format(RDF/XML,JSON,JSON LD,…)
External Web Services requestor
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 8
Outline
1 OMG API4KP – An API for Knowledge PlatformsScope of the StandardScenario: Semantic Annotation and Discovery of Biodiversity DataThe API4KP MetamodelFoundations: MonadsArchitecture Styles
2 Repositories with OntoMavenMotivationArchitectureSelected Plug-InsThe Terminology Server Scenario with Distributed KnowledgeRepositories
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 9
API4KP Metamodel: Classes
A metamodel is a model about models.Entities in the universe of a KP fall principally into these classes:
Knowledge Sources - Models of the World
Knowledge Environments - Models of Relationships
Knowledge Operations - the Meta-API, Models of APIs
Knowledge Events
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 10
API4KP Metamodel: Classes
Entities in the universe of a KP fall principally into these classes:
Knowledge Sources : source of machine-readable information withsemantics.
Knowledge Environments
Knowledge Operations
Knowledge Events
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 10
API4KP Metamodel: Classes
Entities in the universe of a KP fall principally into these classes:Knowledge Sources
Mutable or Immutable (a.k.a Knowledge Resources)By level of abstraction (Knowledge Source Level)Basic or Structured
Knowledge Environments
Knowledge Operations
Knowledge Events
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 10
API4KP Metamodel: Classes
Entities in the universe of a KP fall principally into these classes:Knowledge Sources
Mutable or Immutable (a.k.a Knowledge Resources)By level of abstraction (Knowledge Source Level)
Item - physical source, e.g. on hard disk or in memoryManifestation - concrete syntax, e.g. OWL axiom in Manchester syntaxExpression - abstract syntax, e.g. OWL axiomAsset - equivalence class of Knowledge Expressions, with some equivalencerelation e.g. logical equivalence
Basic or Structured
Knowledge Environments
Knowledge Operations
Knowledge Events
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 10
API4KP Metamodel: Classes
Entities in the universe of a KP fall principally into these classes:
Knowledge Sources
Knowledge T Environments : mathematical structure of mappings,where the domain and codomains of the mappings, called membersof the knowledge environment, are instances of class T.
Knowledge Operations
Knowledge Events
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 10
API4KP Metamodel: Classes
Entities in the universe of a KP fall principally into these classes:
Knowledge Sources
Knowledge T Environments
Knowledge Operations : functionality (possibly with side-effects. i.e.effects beyond the output value returned) having a knowledgesource, environment or operation type in its signature.
Knowledge Events
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 10
API4KP Metamodel: Classes
Entities in the universe of a KP fall principally into these classes:
Knowledge Sources
Knowledge Environments
Knowledge Operations
Knowledge Events : successful evaluation or execution of aknowledge operation by a particular application at a particular time
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 10
Outline
1 OMG API4KP – An API for Knowledge PlatformsScope of the StandardScenario: Semantic Annotation and Discovery of Biodiversity DataThe API4KP MetamodelFoundations: MonadsArchitecture Styles
2 Repositories with OntoMavenMotivationArchitectureSelected Plug-InsThe Terminology Server Scenario with Distributed KnowledgeRepositories
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 11
Structures Needed in API4KP
The various knowledge representations in the scenario require a varietyof structures.
Descriptions of I/O programs for persistent Knowledge Sources, e.g.the database of the Case History KP.
Unordered collections for declarative Knowledge Sources,
Ordered collections for order-prioritized Knowledge Sources,
Concurrent sequences for streamed Knowledge Sources,
Descriptions of side-effects for active Knowledge Sources,
Failure-aware types for reliable Knowledge Sources,
Descriptions of state transitions for stateful Knowledge Sources,
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 12
Structures Needed in API4KP
The various knowledge representations in the scenario require a varietyof structures.
Descriptions of I/O programs for persistent Knowledge Sources,
Unordered collections for declarative Knowledge Sources, e.g. theOWL ontology in the Stream Processing KP.
Ordered collections for order-prioritized Knowledge Sources,
Concurrent sequences for streamed Knowledge Sources,
Descriptions of side-effects for active Knowledge Sources,
Failure-aware types for reliable Knowledge Sources,
Descriptions of state transitions for stateful Knowledge Sources,
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 12
Structures Needed in API4KP
The various knowledge representations in the scenario require a varietyof structures.
Descriptions of I/O programs for persistent Knowledge Sources,
Unordered collections for declarative Knowledge Sources,
Ordered collections for order-prioritized Knowledge Sources, e.g. theECA rulebase in the CDS KP.
Concurrent sequences for streamed Knowledge Sources,
Descriptions of side-effects for active Knowledge Sources,
Failure-aware types for reliable Knowledge Sources,
Descriptions of state transitions for stateful Knowledge Sources,
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 12
Structures Needed in API4KP
The various knowledge representations in the scenario require a varietyof structures.
Descriptions of I/O programs for persistent Knowledge Sources,
Unordered collections for declarative Knowledge Sources,
Ordered collections for order-prioritized Knowledge Sources,
Concurrent sequences for streamed Knowledge Sources, e.g. theinput and output streams of the Stream Processing KP.
Descriptions of side-effects for active Knowledge Sources,
Failure-aware types for reliable Knowledge Sources,
Descriptions of state transitions for stateful Knowledge Sources,
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 12
Structures Needed in API4KP
The various knowledge representations in the scenario require a varietyof structures.
Descriptions of I/O programs for persistent Knowledge Sources,
Unordered collections for declarative Knowledge Sources,
Ordered collections for order-prioritized Knowledge Sources,
Concurrent sequences for streamed Knowledge Sources,
Descriptions of side-effects for active Knowledge Sources, e.g. theeffects generated by the CDS KP.
Failure-aware types for reliable Knowledge Sources,
Descriptions of state transitions for stateful Knowledge Sources,
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 12
Structures Needed in API4KP
The various knowledge representations in the scenario require a varietyof structures.
Descriptions of I/O programs for persistent Knowledge Sources,
Unordered collections for declarative Knowledge Sources,
Ordered collections for order-prioritized Knowledge Sources,
Concurrent sequences for streamed Knowledge Sources,
Descriptions of side-effects for active Knowledge Sources,
Failure-aware types for reliable Knowledge Sources, e.g. a failedcommunication from the CDS KP.
Descriptions of state transitions for stateful Knowledge Sources,
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 12
Structures Needed in API4KP
The various knowledge representations in the scenario require a varietyof structures.
Descriptions of I/O programs for persistent Knowledge Sources,
Unordered collections for declarative Knowledge Sources,
Ordered collections for order-prioritized Knowledge Sources,
Concurrent sequences for streamed Knowledge Sources,
Descriptions of side-effects for active Knowledge Sources,
Failure-aware types for reliable Knowledge Sources,
Descriptions of state transitions for stateful Knowledge Sources, e.g.ECA simulations for protocol development.
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 12
Structures Needed in API4KP
The various knowledge representations in the scenario require a varietyof structures.
Descriptions of I/O programs for persistent Knowledge Sources,
Unordered collections for declarative Knowledge Sources,
Ordered collections for order-prioritized Knowledge Sources,
Concurrent sequences for streamed Knowledge Sources,
Descriptions of side-effects for active Knowledge Sources,
Failure-aware types for reliable Knowledge Sources,
Descriptions of state transitions for stateful Knowledge Sources,
In functional programming, monads have been created for each of thesecases, providing a concept of equivalence that is isolated fromside-effects and non-determinism, which is critical for conceptualmodeling.
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 12
Outline
1 OMG API4KP – An API for Knowledge PlatformsScope of the StandardScenario: Semantic Annotation and Discovery of Biodiversity DataThe API4KP MetamodelFoundations: MonadsArchitecture Styles
2 Repositories with OntoMavenMotivationArchitectureSelected Plug-InsThe Terminology Server Scenario with Distributed KnowledgeRepositories
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 13
API4KP Distributed Architecture Styles
Direct Strongly-Coupled API4KB AccessOntoMaven, RuleMaven
Loosely-coupled Remote Invocation via API4KB InterfacesRequest-Reply ProtocolsRemote Procedure CallsRemote Method InvocationDistributed Components (OntoMaven with Aspect-Oriented ComponentModel)
Decoupled Indirect CommunicationPublish Subscribe and Distributed Event Based SystemsGroup communication (broadcast/multicast)Shared Resources (Tuple Spaces, Distributed Shared Memory, . . . )Asynchronous Messaging (ZeroMQ, Erlang/RabbitMQ, OpenESB, MuleESB, . . . )
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 14
API4KP Distributed Architecture Styles
Direct Strongly-Coupled API4KB AccessOntoMaven, RuleMaven
Loosely-coupled Remote Invocation via API4KB InterfacesRequest-Reply ProtocolsRemote Procedure CallsRemote Method InvocationDistributed Components (OntoMaven with Aspect-Oriented ComponentModel)
Decoupled Indirect CommunicationPublish Subscribe and Distributed Event Based SystemsGroup communication (broadcast/multicast)Shared Resources (Tuple Spaces, Distributed Shared Memory, . . . )Asynchronous Messaging (ZeroMQ, Erlang/RabbitMQ, OpenESB, MuleESB, . . . )
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 14
API4KP Distributed Architecture Styles
Direct Strongly-Coupled API4KB AccessOntoMaven, RuleMaven
Loosely-coupled Remote Invocation via API4KB InterfacesRequest-Reply ProtocolsRemote Procedure CallsRemote Method InvocationDistributed Components (OntoMaven with Aspect-Oriented ComponentModel)
Decoupled Indirect CommunicationPublish Subscribe and Distributed Event Based SystemsGroup communication (broadcast/multicast)Shared Resources (Tuple Spaces, Distributed Shared Memory, . . . )Asynchronous Messaging (ZeroMQ, Erlang/RabbitMQ, OpenESB, MuleESB, . . . )
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 14
Participants
Tara Athan, Athan Services (athant.com), West Lafayette, Indiana,USA, taraathan@gmail.com
Roy Bell, Raytheon, Fort Wayne, Indiana, USA,Roy_M_Bell@raytheon.com
Elisa Kendall, Thematix Partners LLC, New York, New York, USA,ekendall@thematix.com
Adrian Paschke, AG Corporate Semantic Web, Freie UniversitaetBerlin, Germany, paschke@inf.fu-berlin.de
Ralph Schaefermeier, AG Corporate Semantic Web, Freie UniversitaetBerlin, Germany, schaef@inf.fu-berlin.de
Davide Sottara, Department of Biomedical Informatics, Arizona StateUniversity, USA, davide.sottara@asu.edu
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 15
Outline
1 OMG API4KP – An API for Knowledge PlatformsScope of the StandardScenario: Semantic Annotation and Discovery of Biodiversity DataThe API4KP MetamodelFoundations: MonadsArchitecture Styles
2 Repositories with OntoMavenMotivationArchitectureSelected Plug-InsThe Terminology Server Scenario with Distributed KnowledgeRepositories
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 18
Ontology Project Life Cycle Management
Avoid manual stepsReuse/import, rename, refactor, merge, test, deploy, . . .Pass documentation and configuration information
Work collaboratively, but support local developmentRemote and local repositories (even without Internet connection)
Automatically process resourcesManage dependencies and development + deployment properties
Share ontology resources across projectsOntology artifacts including metadata, documentation, tests, . . .
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 19
Ontology Project Life Cycle Management
Avoid manual stepsReuse/import, rename, refactor, merge, test, deploy, . . .Pass documentation and configuration information
Work collaboratively, but support local developmentRemote and local repositories (even without Internet connection)
Automatically process resourcesManage dependencies and development + deployment properties
Share ontology resources across projectsOntology artifacts including metadata, documentation, tests, . . .
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 19
Ontology Project Life Cycle Management
Avoid manual stepsReuse/import, rename, refactor, merge, test, deploy, . . .Pass documentation and configuration information
Work collaboratively, but support local developmentRemote and local repositories (even without Internet connection)
Automatically process resourcesManage dependencies and development + deployment properties
Share ontology resources across projectsOntology artifacts including metadata, documentation, tests, . . .
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 19
Ontology Project Life Cycle Management
Avoid manual stepsReuse/import, rename, refactor, merge, test, deploy, . . .Pass documentation and configuration information
Work collaboratively, but support local developmentRemote and local repositories (even without Internet connection)
Automatically process resourcesManage dependencies and development + deployment properties
Share ontology resources across projectsOntology artifacts including metadata, documentation, tests, . . .
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 19
Outline
1 OMG API4KP – An API for Knowledge PlatformsScope of the StandardScenario: Semantic Annotation and Discovery of Biodiversity DataThe API4KP MetamodelFoundations: MonadsArchitecture Styles
2 Repositories with OntoMavenMotivationArchitectureSelected Plug-InsThe Terminology Server Scenario with Distributed KnowledgeRepositories
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 20
OntoMaven – Apache Maven Extension
Ontology ArtifactsManaged by groupID, artifactID, and version
Ontology RepositoriesLocal and remote repositories used to store artifacts (ontologies,plug-ins, resources, test suites etc.)
OntoMaven Plug-insImplement the ontology project life cycle management functionalitiesGoals provide interfaces bundled to life cycle phases
Project Ontology ModelPOM.xml – Declarative project description and configuration
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 21
OntoMaven – Apache Maven Extension
Ontology ArtifactsManaged by groupID, artifactID, and version
Ontology RepositoriesLocal and remote repositories used to store artifacts (ontologies,plug-ins, resources, test suites etc.)
OntoMaven Plug-insImplement the ontology project life cycle management functionalitiesGoals provide interfaces bundled to life cycle phases
Project Ontology ModelPOM.xml – Declarative project description and configuration
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 21
OntoMaven – Apache Maven Extension
Ontology ArtifactsManaged by groupID, artifactID, and version
Ontology RepositoriesLocal and remote repositories used to store artifacts (ontologies,plug-ins, resources, test suites etc.)
OntoMaven Plug-insImplement the ontology project life cycle management functionalitiesGoals provide interfaces bundled to life cycle phases
Project Ontology ModelPOM.xml – Declarative project description and configuration
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 21
OntoMaven – Apache Maven Extension
Ontology ArtifactsManaged by groupID, artifactID, and version
Ontology RepositoriesLocal and remote repositories used to store artifacts (ontologies,plug-ins, resources, test suites etc.)
OntoMaven Plug-insImplement the ontology project life cycle management functionalitiesGoals provide interfaces bundled to life cycle phases
Project Ontology ModelPOM.xml – Declarative project description and configuration
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 21
POM.xml
<project><modelVersion>...</modelVersion><groupId>...</groupId><artifactId>...</artifactId><version>...</version>...
</project>
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 22
The Maven Repository Architecture
Image source: http://tutorials.jenkov.com/maven/maven-tutorial.html ,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 23
Outline
1 OMG API4KP – An API for Knowledge PlatformsScope of the StandardScenario: Semantic Annotation and Discovery of Biodiversity DataThe API4KP MetamodelFoundations: MonadsArchitecture Styles
2 Repositories with OntoMavenMotivationArchitectureSelected Plug-InsThe Terminology Server Scenario with Distributed KnowledgeRepositories
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 24
OntoMaven – Selected Plug-Ins
Import Dependency ManagementDocumentationVersioningTesting with Test SuitesAspect-Oriented Development and Module Selection. . .
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 25
Import and Dependency Management Plug-In
???.owl
ImportOntology
Parse Ontology
exist?
Return Result List (List of imported and
not imported Ontologies)
yes
nosave? end
Save Ontology in Local
Repository
yes
no
Create XMLCatalog
Return Result List (List of local
ontologies andXMLCatalog with local references)
Figure: Importation of an ontology into the local repository.
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 26
Ontology Artifacts
Archiva Repostory Manager
Dependencies
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 27
Ontology Artifacts in Remote Repository
<profiles> <profile><id>2</id><activation> <activeByDefault>true</activeByDefault></activation><repositories> <repository>
<snapshots> <enabled>true</enabled> </snapshots><id>snapshots</id><name>OntoMaven Snapshot Repository</name><url>http://www.corporate−semantic−web.de/repository/
snapshots/</url>...
</profiles><dependencies> <dependency>
<groupId>xfront.com.owl.ontologies</groupId><artifactId>Camera−OWL−Ontology</artifactId><version>1.0−SNAPSHOT</version> <type>owl</type>
</dependency> </dependencies>
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 28
Report Plug-In – Documentation
<description>here’s the description of an ontology</description><organization><name>Corporate Semantic Web, Freie Universitaet
Berlin</name><url>http://www.corporate−semantic−web.de</url></organization><inceptionYear>2013</inceptionYear><licenses> <license><name>LGPL−3.0</name><url>http://www.gnu.org/licenses/lgpl.txt</url></license></licenses><developers> <developer><name>Adrian Paschke</name><email>paschke@inf.fu−berlin.d</email><organization>Corporate Semantic Web</
organization><organizationUrl>http://www.corporate−semantic−
web.de/</organizationUrl><roles> <role>developer</role> </roles></developer></developers>
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 29
Ontology Report
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 30
Technical Report
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 31
Visualization Report
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 32
Versioning Plug-In – SVont
Plug-In SVN Command Descriptioncheckout Check out working copy from project
achievestatus Status of the working copydiff Diff between two revisions or pathscommit Commit working copy to repositoryinfo Info about repository and working copy
Iteration nIteration n-1…Iteration 2Iteration 1
Version 1
Version 1
Version 2.1Version 2
Version 1 Version 1
Version 2.x
Version 3 Version 3.1
Version 4
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 33
OntoMaven – Plug-In Goal ”diff“
-------------------------- DIFF INFORMATION ------------------------Ontology File : ...\...\...\...\...\camera.owl
================== ACTUAL CHANGES ==================================Axioms were added to the repository, or deleted from the working copy.SubClassOf(<http://www.xfront.com/ontologies/camera/#Money> owl:Thing)Declaration(Class(<http://www.xfront.com/ontologies/camera/#Money>))====================================================================
------------------ MORE INFO ---------------------------------------The above changes of the OWL classes are dependent on the axioms:currency <------ DataProperty (Domain)cost <------ ObjectProperty (Range)--------------------------------------------------------------------
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 34
SVont – Subversion for Ontologies
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 35
SVont – Commit Workflow
ClientSVoNt Server
SVN Server SVoNt Extension
PrecommitHookcommit
Error
ConsistencyCheck
consistent
ChangeDetection
changes
ChangeWriter
ChangeLog
ProcessCommit
ProcessCommit
no yes
no
yes
Ontology File
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 36
Test Plug-In – Test Cases for KBs
§ Test Cases constrain the possible models and approximate the intended models of the knowledge base§ Queries are used to test the rule base
§ A test case is defined by T := {X, A, N}, where§ assertion base (input data, e.g. facts )§ a formula denoting a test query§ N := + , – a positive or negative label
§ Semantics
§ |=TC compatibility relation§ Mod association function between sets of formulas and sets of models§ Σ model selection function
for T:={X, A, +} and for T:={X,A,-}§ CR(X) deductive closure of X. Decidable inference operator based on formal proofs
LX ⊆LA∈
)(R)(Mod(X), m : M m iff ) A, (X, | M 0TC0 AModm∈⇒∑∈∈∀+=
)(R)(Mod(X), m : M m iff ) A, (X, | M 0TC0 AModm∉⇒∑∈∈∃−=
)(XCA R∈)(XCA R∉
+
Intended Model
Partial Model
+ +-
Test Cases (+,-) inconsistent: +
Intended Model
+ +
-
Test Cases (+,-) consistent:
-
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 37
POM.xml Test Plug-In Configuration
<plugin><groupId>de.csw.MvnOnt</groupId><artifactId>MvnOwlTest</artifactId><version>1.0−SNAPSHOT</version><configuration><owlfile>owl/1a.owl</owlfile></configuration><executions><execution><goals><goal>owltest</goal></goals></execution></executions>
</plugin><plugin>
<groupId>de.csw.MvnOnt</groupId><artifactId>MvnOwlEntailment</artifactId><version>1.0−SNAPSHOT</version><configuration>
<premise\_file>owl/1a.owl</premise\_file><conclusion\_file>owl/1aconclusion.owl</conclusion\_file>
</configuration><executions><execution><goals><goal>owlentailment</goal></goals></execution></executions></plugin></plugins>
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 38
Aspect-Oriented Ontologies
Aspect definition by quantification
Query Manual annotation/selected editing context in tool
Original ontology
Ontology with aspect annotations
Aspect-based module selection
Aspect namesor descriptions
Ontologymodule
Ontology module selection as an OntoMaven goal
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 39
Declarative Module Selection with Aspectsand OntoMaven
Aspect definition by quantification
Query Manual annotation/selected editing context in tool
Original ontology
Ontology with aspect annotations
Aspect-based module selection
Aspect namesor descriptions
Ontologymodule
Ontology module selection as an OntoMaven goal
<userAspects><aspect>http://example.org/reputation#Reputation123</aspect><aspect>http://example.org/provenance#prov_789</aspect><aspect>http://example.org/time#TimeInterval1</aspect></userAspects>
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 40
Outline
1 OMG API4KP – An API for Knowledge PlatformsScope of the StandardScenario: Semantic Annotation and Discovery of Biodiversity DataThe API4KP MetamodelFoundations: MonadsArchitecture Styles
2 Repositories with OntoMavenMotivationArchitectureSelected Plug-InsThe Terminology Server Scenario with Distributed KnowledgeRepositories
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 41
Terminology Server Scenario with OntoMaven
Ontologies,vocabularies andexternal sourcesconfigurable asOntoMavendependencies.
Easy to add newresources.
Fast deployment oftest instances withdifferent knowledgesources.
Context-baseddeployment ofknowledgecomponents withaspect-orientation.
API4KP
API4KP
SKOS RDF
OWL
Web Services Client
HTTP Server
Semantic Web Repository(Virtuoso)
HTTP request
Serialization format(RDF/XML,JSON,JSON LD,…)
External Web Services requestor
Local repository
Local repository
Local repository
Central repository
OntoMaven
Ont
oMav
en e
xter
nal d
epen
denc
ies
<pom>
Compontents• contracts• provided and required
interfaces,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 42
Summary
The Terminology Server scenario encompasses a number ofarchitectural paradigms and KR requirements addressed by API4KP.
API4KP shows high ontological completeness and clarity with respectto the BWW reference model.
OntoMaven automates and supports the life cycle management ofontology projects and ontology artifactsDeclarative description in POM defining project conventions and APIs
Additional resource directoriesPlug-in configurationArtifact librariesRepository and deployment configurationAspect-orientation for context-based knowledge resource selection. . .
API4KP and OntoMaven allow integration and exchange ofheterogeneous and distributed knowledge and data sources
in a declarative fashionalong with metadata, interface descriptions, and test cases
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 43
Summary
The Terminology Server scenario encompasses a number ofarchitectural paradigms and KR requirements addressed by API4KP.
API4KP shows high ontological completeness and clarity with respectto the BWW reference model.
OntoMaven automates and supports the life cycle management ofontology projects and ontology artifactsDeclarative description in POM defining project conventions and APIs
Additional resource directoriesPlug-in configurationArtifact librariesRepository and deployment configurationAspect-orientation for context-based knowledge resource selection. . .
API4KP and OntoMaven allow integration and exchange ofheterogeneous and distributed knowledge and data sources
in a declarative fashionalong with metadata, interface descriptions, and test cases
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 43
Related Publications I
R. Schäfermeier, L. Krus, and A. Paschke, “An aspect-oriented extension to the owl api –specifying and composing views of owl ontologies using ontology aspects and javaannotations,” in KEOD 2015: 7th International Conference on Knowledge Engineeringand Ontology Development, vol. 2, pp. 187–194, 2015.
A. Paschke, “Provalets - OSGi-based Prova Agents for Rule-Based Data Access,” inProceedings of the 14th International Conference on Ontologies, Databases andApplications of Semantics (ODBASE) 2015, Rhodes, Greece, October 26-30, 2015, 2015.
T. Athan, R. Bell, E. F. Kendall, A. Paschke, and D. Sottara, “API4KP metamodel: Ameta-api for heterogeneous knowledge platforms,” in Rule Technologies: Foundations,Tools, and Applications - 9th International Symposium, RuleML 2015, Berlin, Germany,August 2-5, 2015, Proceedings, p. 144–160, 2015.
A. Paschke, T. Athan, D. Sottara, E. F. Kendall, and R. Bell, “A representational analysis ofthe API4KP metamodel,” in Formal Ontologies Meet Industry - 7th InternationalWorkshop, FOMI 2015, Berlin, Germany, August 5, 2015, Proceedings, p. 1–12, 2015.
A. Paschke and R. Schäfermeier, “Aspect OntoMaven — Aspect-Oriented OntologyDevelopment and Configuration With OntoMaven,” in 3rd Workshop on Formal Semanticsfor the Future Enterprise (FSFE 2015), Business Information Systems Workshops(W. Abramowicz, ed.), vol. 228, Springer, 2015.
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 44
Related Publications II
R. Schäfermeier and A. Paschke, Verteilte und agile Ontologieentwicklung, pp. 341–358.
X.media.press, Springer Berlin Heidelberg, 2015.
R. Schäfermeier and A. Paschke, “Aspect-Oriented Ontologies: Dynamic ModularizationUsing Ontological Metamodeling,” in Proceedings of the 8th International Conference onFormal Ontology in Information Systems (FOIS 2014), pp. 199 – 212, IOS Press, 2014.
R. Schäfermeier, T. Athan, and A. Paschke, “Common Logic Importation ResolutionImplemented in OntoMaven,” in Proceedings of the 8th International Workshop onModular Ontologies @FOIS 2014" (WoMO 2014), 2014.
A. Paschke, “OntoMaven: Maven-based Ontology Development and Management ofDistributed Ontology Repositories,” arXiv:1309.7341 [cs], Sept. 2013.
R. Schäfermeier, “Aspect-Oriented Ontology Development,” in Business InformationSystems Workshops (W. Abramowicz, ed.), no. 160 in Lecture Notes in BusinessInformation Processing, pp. 208–219, Springer Berlin Heidelberg, 2013.
R. Schäfermeier and A. Paschke, “Towards a Unified Approach to Modular OntologyDevelopment Using the Aspect-Oriented Paradigm,” in 7th International Workshop onModular Ontologies (WoMO) 2013, p. 73, 2013.
A. Paschke, “OntoMaven API4KB - A Maven-based API for Knowledge Bases,” in SWAT4LS,2013.
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 45
Related Publications III
A. Paschke, “OntoMaven: Maven-based Ontology Development and Management ofDistributed Ontology Repositories,” 2013.
,
FU Berlin, OntoMaven and API4KP, Berlin Semantic Web Meetup Dec 2, 2015 46