26
1 Semantic search and reporting implementation on .15926 platform Victor Agroskin 10.05.2012

04 victor agroskin

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: 04 victor agroskin

1

Semantic search and reporting

implementation on .15926

platform

Victor Agroskin

10.05.2012

Page 2: 04 victor agroskin

2

About the .15926 project

• TechInvestLab.ru – Moscow-based strategy, organization and IT architecture consultancy

• Software platform for ontology programming – allow business user to perform advanced tasks with data using only domain-specific terms, patterns and metaphors

• .15926 public releases:– Browser, March 2011

– Editor, December 2011

– TabLan modeling methodology, March 2012

– SearchLan query language, May 2012 (planned)

• Russian-speaking community of approx. 100 friends

Page 3: 04 victor agroskin

3

Ontology Programming Platform

• A long road to business user starts from rather complex things

• Programming, modeling, ontologizing – different names for one activity– Mapping and compiling are the same

• Ontology-related computations based on general-purpose multi-paradigm language– Not a logic one!

• Domain Specific Languages (DSLs) - defining higher abstraction language layers and domain-specific constructs – From triples to instances to templates to patterns…

Page 4: 04 victor agroskin

4

Language Workbench IDE • The goal – to have a product of Language Workbench class for

ontology work

• Fully integrated DSL development – definitions, libraries, editors

• Turing-complete mapping environment to any schema (conceptual or proprietary CAD/PLM)

• Seamless integration with outside data sources – tables, databases, XML

• Python realization:

– Core functionality to work with various triple representations of ISO 15926 type and template instances

– Core support of SPARQL querying, optimized for work with federated endpoints as unreliable infrastructure

– Plug-in architecture for data analysis and transformation (mappings, searches, verification, reasoning, etc.)

– Optimized for ISO 15926 data structure searches (indexing, substring filtering, etc.)

Page 5: 04 victor agroskin

5

Tables

ISO 15926 Data____

Table Reader

.15926 Builder

RDF/OWL Files

iRING, Part 8, PCA RDL/JORD, Part 4

.15926 Core

15926-2,7 OWL

Definitions

15926-2

classes, relationships,

individuals

15926-7

template definitions,

template instances

15926-6

metadata

15926-7

template constructor

TabLan

Mapping Mapping

SPARQL Endpoint

Te

mp

late

Lib

rary

OIM Writer

.15926 Scanner

OIM

Definition

SearchLan

Interface

Te

mp

late

Lib

rary

RDF/OWL Files

& SPARQL

Editor Interface

Page 6: 04 victor agroskin

6

Engineering Data Domain

• Big Data– PCA RDL – more then 3 mil. triples and set to grow

– … but it is just reusable reference data!

• Data integration vs. data reuse – do not throw away intermediary files, but learn to work with them– Distributed semantic networks with many-layered

semantic predefined by engineering knowledge

• Mappings across several ontologies

• Specialized semantic tools required for:– Data modeling

– Mappings

– Reasoning

– Search

Page 7: 04 victor agroskin

7

ISO 15926 (Meta) LanguagesConceptual Graphical Data Query

Patterns

Part 7 Templates Part 8

RDF/OWL

ConventionsPart 2 Type

Instances

Part 2,7

Instance

Diagrams

EXPRESS EXPRESS-G OWL

RDF SPARQL

XML

Page 8: 04 victor agroskin

8

+ Engineering Languages

Conceptual Graphical Data Query

Engineering

Specialty

Information

Drawings &

Diagrams

CAD/PLM

Formats

Natural

Language

Patterns

Part 7 Templates Part 8

RDF/OWL

ConventionsPart 2 Type

Instances

Part 2-7

Instance

Diagrams

EXPRESS EXPRESS-G OWL

RDF SPARQL

XML

Page 9: 04 victor agroskin

9

Filling the GapsConceptual Graphical Data Query

Engineering

Specialty Data

Drawings &

Diagrams

CAD/PLM

Formats

Natural

Language

Patterns Gellish

TabLan.15926

SearchLan

.15926

Part 7 Templates Part 8

RDF/OWL

ConventionsPart 2 Type

Instances

Part 2-7

Instance

Diagrams

EXPRESS EXPRESS-G OWL

RDF SPARQL

XML

Page 10: 04 victor agroskin

10

SearchLan.15926• Query language for 15926-restricted (Part 2 type

instances and template instances) RDF graph

• Built over SPARQL

• Integrated 15926-8 specific data and meta-data (annotation properties) queries

• Available on .15926 platform to plug-ins and in user interface

• Extendable as standard Python functions

• High-level logic available for language extension

• Configurable for specific presets: collections of interrelated data sources (files and endpoints) with namespace conventions, template libraries and metadata annotations

Page 11: 04 victor agroskin

11

Name Queries

@find(label=contains('UOM'))

Page 12: 04 victor agroskin

12

Part 2 Type Queries

@find(id=R1, type=part2.ClassOfClassOfInformationRepresentation)

Page 13: 04 victor agroskin

13

Part 2 Relationship Queries@find(type=part2.Classification, hasClassifier=R5, hasClassified=out)

Page 14: 04 victor agroskin

14

Template Queries

@find(type=p7tpl.DescriptionByInformationObject,

hasRepresented=out,

hasPattern=find(label=icontains(“snip”)))

Page 15: 04 victor agroskin

15

Reference Data Verification (1)

@find(type=part2.Classification, hasClassified=

find(type=part2.any.ClassOfRelationship), hasClassifier=

find(type=part2.any.ClassOfClassOfIndividual)

)

Page 16: 04 victor agroskin

16

Reference Data Verification (2)@find(type=part2.Classification, hasClassified=

find(type=part2.any.ClassOfIndividual), hasClassifier=

find(type=part2.any.ClassOfClassOfRelationship)

)

Page 17: 04 victor agroskin

17

Template “Contraction” Query

@find(type=part2.ClassOfIndirectProperty, hasClassOfPossessor=out, hasPropertySpace=

find(type=part2.Classification, hasClassifier=out, hasClassified=

find(type=part2.PropertyQuantification, hasInput=out, hasResult=

find(type=part2.RealNumber)

)

)

)

Page 18: 04 victor agroskin

18

Template “Contraction” Results

Page 19: 04 victor agroskin

19

Patterns (iRING version)

@find(type=p7tpl.ClassifiedArrangementOfIndividual,

hasPart=find(id=uri(‘http://company.com/pr

oject/data#R7554677677’)),

hasWhole=out,

hasContext=find(label=icontains(‘plant area composition’)))

@find(type=p7tpl.ClasifiedClassOfIdentification,

hasRepresented=R1,

valPattern=out,

hasContext=find(label=icontains(‘area code’)))

P0002

Functional AreaPLANT AREA COMPOSITION

ClassifiedArrangementOfIndividual

AREA CODE IDENTIFICATION

ClassifiedClassOfIdentification

Page 20: 04 victor agroskin

20

Object Information Models• Extracting ISO 15926 sub-graphs (not RDF!) and

presenting them in a user interface in a compact form

• Partial definition:oim_settings = [

dict(category="classified by", type=part2.Classification, hasClassified=_this, hasClassifier=_other),

dict(category="classifies", type=part2.Classification, hasClassified=_other, hasClassifier=_this),

dict(category="is specialization of", type=part2.Specialization, hasSubclass=_this, hasSuperclass=_other),

dict(category="is generalization of", type=part2.Specialization, hasSubclass=_other, hasSuperclass=_this),

dict(category="is identified by", type=part2.ClassOfIdentification, hasRepresented=_this, hasPattern=_other),]

Page 21: 04 victor agroskin

21

Page 22: 04 victor agroskin

22

OIM Enhanced with Query

Page 23: 04 victor agroskin

23

Page 24: 04 victor agroskin

24

Roadmap

• Open plug-in specification

• DSL Workbench IDE

• Client-driven feature sets:

– Presets for data sources – servers, files, namespaces, metadata, etc.

– Readers, Writers and Mappings

– Template expansion

– Data verifiers and reasoners

• Opening the source code for partners

• Python based – for foreseeable future

Page 25: 04 victor agroskin

25

Tables

Table

Reader

.15926 Builder

15926-2

classes, relationships,

individuals

15926-7

template definitions,

template instances

15926-6

metadata

15926-7

template constructor

Te

mp

late

Lib

rary

OIM

Writer

.15926 Scanner

SearchLan

Interface

Template Expansion

XML, SQL, CAD/PLM API

Reader

XML, SQL, CAD/PLM API

Writer

XML Files Databases CAD/CAM/PLM

Te

mp

late

Lib

rary

RDF/OWL Files

iRING, Part 8, PCA RDL/JORD, Part 4

15926-2,7 OWL

Definitions

SPARQL Endpoint

RDF/OWL Files

& SPARQL

Editor Interface

Page 26: 04 victor agroskin

2626

Thank you!Anatoly Levenchuk

http://ailev.ru (Rus)

http://levenchuk.com (Eng)

[email protected]

Victor Agroskin

[email protected]

Freeware .15926 Editor available “as is” for evaluation and tests at http://techinvestlab.ru/dot15926Editor

Feedback and comments:

[email protected]

http://community.livejournal.com/dot15926/

TechInvestLab.ru

+7 (495) 748-5388Elephant icon by Martin Berube is used for .15926 software according to terms at http://www.iconarchive.com/show/animal-icons-by-martin-berube/elephant-icon.html