Download presentation
Presentation is loading. Please wait.
Published byMarcus Whitehead Modified over 8 years ago
1
Applying Semantic Technologies to Asset and Configuration Management in the Enterprise Taylor Cowan Brian Boyd Travelocity.com
2
Agenda RDF intro Problem space Demo Real Software ASYDEO Ontology Learn about how we built it
3
RDF != XML “ The site at http://www.travelocity.com, also known as Travelocity, is an online travel agency competing with expedia.com”http://www.travelocity.com
4
Conceptual Model Travelocity.com AKA Travelocity Is a Online travel agency Has competitor Expedia.com
5
Same concepts serialized as “N3” :OnlineTravelAgency a owl:Class. :hasCompetitor a rdf:Property. a :OnlineTravelAgency ; rdfs:label "Travelocity"@en ; :hasCompetitor.
6
As RDF/XML… Travelocity
7
As N-Triples canonical format…. "Travelocity"@en.. Subject, Verb, Object…
8
And finally, as Java code… OntModel m = ModelFactory.createOntologyModel(); OntClass ota = m.createClass("OnlineTravelAgency"); Individual tvly = ota.createIndividual("http://www.travelocity.com"); tvly.setLabel("Travelocity", "en"); OntProperty p = m.createOntProperty("hasCompetitor"); tvly.setPropertyValue(p, m.createResource("http://www.expedia.com"));
9
“Understanding the relationships between systems, software, and the business processes they enable”.
10
Ontology Software PeopleSystems Business processes
11
Travelocity Systems Knowledge 42,000 explicit assertions.
12
Problems ASYDEO Solves If a change is made to an application, what could be impacted? Rate of change exceeds our capacity to manage documentation, is there an alternative? What URL/ports should we monitor?
13
demo
14
SPARQL #1 Question: What other software does software named “air-shopping” with version “1.0” connect to? ?srcSoftware?sap?service?dstSoftware Connects to Accessed by Provides service version=“1.0” label=“air-shopping”
15
SELECT DISTINCT ?dstSoftware WHERE { ?srcSoftware a asydeo:ApplicationSoftware. ?srcSoftware rdfs:label ?label. ?srcSoftware :version "1.0". ?srcSoftware :connectsTo ?sap. ?service :isAccessedBy ?sap. ?dstSoftware :providesService ?service. FILTER regex(?label, "air-shopping", "i") } ?srcSoftware?sap?service?dstSoftware Connects to Accessed by Provides service version=“1.0” label=“air-shopping”
16
SPARQL #2 What System Services are provided by Computer System “srvhlp550”?
17
SELECT DISTINCT ?service WHERE { ?system rdfs:label "srvhlp550". ?system a :System. { ?system :hasInstalled ?software } UNION { ?cluster :hasMember ?system. ?cluster :hasInstalled ?software }. ?software :providesService ?service }
18
Asydeo basics Apache 2.0 licenseWorking software Open to contribution Java/Jena based http://asydeo.googlecode.com
19
ASYDEO Platform Jetty (or any servlet container) Stripes 1.5 jquery commons configuration Jena 2.7 JenabeanAsydeo.owlTDB
20
How the UI works Our ontology declares a set of widgets
21
Each Widget has a Server Side representation
22
Ontology provides UI with tips for how to show each property hasModel
23
Path from property to java… Has editor hasModel Has type Basic DropDown Maps to Java class DropDown
24
In Raw RDF (N3 format) schema:hasModel a owl:FunctionalProperty, owl:ObjectProperty ; rdfs:domain schema:System ; rdfs:label "Model"^^xsd:string ; rdfs:range schema:Model ; schema:editor schema:BasicDropDown; schema:order "94". schema:BasicDropDown a schema:DropDown.
25
Included because RDF type is in property hasModel’s domain. schema:hasModel rdfs:domain schema:System
26
Candidates from the property’s range (rdfs:range schema:Model) schema:hasModel rdfs:range schema:Model
27
The property’s RDF Label provides human readable label text schema:hasModel rdfs:label "Model"^^xsd:string
28
The property’s position, relative to other items comes from ontology as well. schema:hasModel schema:order "94“ schema:hasModel schema:order "94“
29
Future Work
30
Auto-discovery Scripts Systems Engineering (ASYDEO) Network dumps Deployed software manifests System uptime and configuration rdf
31
Some Advantages We Discovered CMDB (mysql) Flat/tabular model Code and database cognizant of ontology No restriction languageAll data must be explicit ASYDEO (Jena) HierarchicalCode is ontology agnosticOWL provides restrictionsSome data is inferred
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.