Information Object Design Pattern for Modeling Domain Specific Knowledge Nitin Arora1, Rupert Westenthaler1, Wernher Behrendt1, Aldo Gangemi2 1

Salzburg Research Forschungsgesellschaft m.b.H., A5020 Salzburg, Austria {.}@salzburgresearch.at 2Laboratory for Applied Ontology, ISTC-CNR, Roma (Italy) [email protected]

Abstract. We report on the results of a European research project which developed a standardized container object, namely Knowledge Content Object or KCO, for the management of rich media content which is enhanced by representations of domain knowledge. KCOs are based on the Information Object Design Pattern originally developed for the DOLCE foundational ontology. We describe a methodology for stepwise refinement of the domain specific knowledge in these container objects. The work aims at bringing semantic web technologies and object-oriented software engineering closer together.

1 Introduction Modeling domain specific knowledge plays an important role throughout the software development cycle, from gathering business requirements to technical design and implementation. Most modern software development tools include support for Unified Modeling Language [1] and code generation, which to some extent helps in bridging the gap between a domain expert and the software system designer. However, the issues regarding reusing domain models remain, as the models are often too application specific and too much biased towards the purpose of the application. Another important issue is that of interoperability between two models belonging to different domains, but sharing some aspect of reality. A further issue to consider is the use of web content or as a knowledge source for specific domains. Knublauch et al. in [2] highlight the use of semantic web technologies (like RDF [3] and OWL [4]) for Object Oriented Software Developers and how the Semantic Web [5] can serve as a platform on which domain models can be created, shared and reused. This paper discusses one such example, namely the usage of the Information Object Design Pattern (IO Design Pattern) which is taken from the DOLCE foundational ontology [6], for the modeling of domain specific information in a special container object called Knowledge Content Object or KCO. The KCO is itself derived from the Information Object and provides a framework where domain specific knowledge and the actual content can not only co-exist but refer to each other. The design uses URIs pointing to content or knowledge sources. Refer to [7] for a definition of KCOs in

OWL and for an application within the context of paid content. Section 2 discusses the motivation behind IO Design pattern followed by the implementation details in Section 3. Section 4 highlights the design of KCOs as a usage example.

2 Information Object Design Pattern: Motivation The Information Object Design Pattern (see Figure 1) is an ontological design pattern specified in the DOLCE foundational ontology [6]. The IO Design pattern is based on the fact that conceptualization and the actual realisation of an entity are two different aspects. For instance a website may be conceptualized by sketching out its design, and by noting down the content that needs to be put on it and the nature of it. But it is only realized when a web designer creates the web site in HTML, i.e. once an actual instance of it exists. The rationale behind this design pattern is that any content object (entity) can realize a socially constructed object called information object (IO). For our example the concept of a web site will refer to information object and the actual realisation is the content object.

Figure 1: DOLCE Information-object design pattern

The information object carries meaning on the cognitive levels of the agent. Agent refers to an agentive role, the combination of a social or a physical agent which is playing a distinct role while interacting with entities. In the above figure, entity plays two distinct roles. First it refers to a physical entity (the actual data or content) which realizes the information object. Entities playing this role are referred to as information-realisations. Second it refers to something (which can be physical or virtual) which the information object is about. For example, a news text is an information realisation of the information object about a real event like a soccer game as interpreted by the news agency. The expressed description of an information object describes the meaning/conceptualization. These semantic descriptions are created and modified by agents and are therefore - like the information object - defined as social objects. Coming back to our example of a website, the graphical design and the nature of the website will be the descriptions.

3 Information Object Design Pattern: Implementation Figure 2 shows the UML diagram of the three aspects in the Information Object Design Pattern: Information Realisation, Information Object and Description. As discussed in the previous section, the interface Information Realisation handles the actual content or data. Information Object is the conceptualization (i.e. the subject matter which has no direct realisation in a target system). Interface Description gives information about the content, data or subject matter. For example: a digital picture of an alpine landscape will be an Information Realisation whereas its meta data descriptions like the encoding format (e.g. "format = jpg") will be the description part. Information Object in this case will be the mental concept of “Alpine Landscape”. To summarize Information Object expresses Descriptions and is about Information Realisation. The usage of this design pattern is explained in detail in the next section.

4 Information Object Design Pattern: Usage in KCOs The KCO is derived from the Information Object Design Pattern. It is divided into six "facets" which are semantically distinct (orthogonal) concepts that can be filled with the actual content and the related domain specific meta data or knowledge (Table 1). Table 1. Facets of a KCO. Facet Content Description

Short Description This is subdivided into three facet elements: access information, meta data schemes and subject matter knowledge about the content

Presentation Description Community Description Business Description Trust & Security Self-description

describes of how the content (and the Knowledge) of the KCO is presented to users and specifies modes of interaction with users This contains descriptions of Plans, Tasks, Roles and Goals in the context of a community which uses the KCO This specifies how to trade the content, including the specification of business models and negotiation protocols To specify methods that ensure security and trust for KCO users This declares the structure of the KCO itself, including active facets, ontologies used, and other KCO system related information

As a usage case, we will describe in detail the first facet of a KCO which is the Content Facet (see Figure 2 which shows the UML Diagram with appropriate relationships and cardinality values). It consists of three layers of descriptions: the first layer describes access information and storage information about the content, the second layer describes the meta data level information like format(s), encoding, etc and the third layer provides knowledge-level statements about the actual subject of the content. These third layer statements refer to a domain ontology and contain instance-specific domain information.

Figure 2: UML diagram of the Content Facet of a KCO. The arrows show class hierarchy and the blue lines are association links with appropriate labels and cardinality values.

The content facet of a KCO may contain multiple content objects. ContentSegment can be any part of a ContentObject. ContentClassificationDescription holds the classification of the content. Domain specific information is part of this ContentClassificationDescription. The first and the second layers are realized through the ContentProfileDescription and ContentSegmentDescription which describe encoding, format and storage information about the actual content. The third layer is realized by the ContentClassification along with ContentClassificationDescription which describes/classifies the content subject and attaches the domain specific information. Coming back to our example of a digital picture of a landscape, the ContentClassification represents the concept of an image of an alpine landscape (with a lake and some mountains) and the ContentObject is its actual realisation (for example the image on the web or on the file system). ContentSegment is a cropped image say of a particular mountain peak visible in the image. The ContentProfile is the handler for the description that deals with the ContentObject. Analogously, ContentSegmentProfile is the handler for the description that deals with the ContentSegment. ContentProfileDescription describes the meta data information for example the format of the landscape image, information about the image storage location (like the URL). ContentSegmentDescription gives storage information (like the URL which can be same as that of the main image) about the sub-image i.e. the mountain peak in our example. Domain specific information can be wrapped in the ContentClassification descriptions for

instance expressing that the picture was taken on the family holiday to the Swiss Alps and that the peak in question is the Matterhorn, etc. Typically the Content Facet of a KCO contains multiple content objects with multiple content segments and their appropriate profiles and descriptions.

5 Conclusion We defined a standardized container object (KCO) which increases interoperability between different knowledge and content management systems, and which promises to save design costs as well as integration costs. The design is supported by a distributed content management system - the "knowledge content carrier architecture" (KCCA) which defines standardized operations on the facets of KCOs.

References 1. Unified Modeling Language: www.uml.org 2. Knublauch, H., Oberle, D., Tetlow, P., Wallace, E.: “A Semantic Web Primer for ObjectOriented Software Developers”, W3C Working Group Note, 9 March 2006. http://www.w3.org/2001/sw/BestPractices/SE/ODSD/ 3. Manola, F., Mille, E.: RDF Primer, W3C Recommendation, 10 February 2004. 4. Dean, M. and Schreiber, G.: Web Ontology Language (OWL) Reference Version 1.0. Technical report, World Wide Web Consortium (W3C) (2003). http://www.w3.org/TR/owl-ref/ 5. W3C Semantic Web: http://www.w3.org/2001/sw/ 6. Gangemi, A. et al, 2002, Sweetening Ontologies with DOLCE, in Proceedings of the 13th International Conference on Knowledge Engineering and Knowledge Management (EKAW'02), Springer, Okt 1-4, Spain, pp. 166-181. 7. Behrendt,W., Gangemi, A., Maass, W., Westenthaler, R.:“Towards an Ontology-Based Distributed Architecture for Paid Content”: A. Gómez-Pérez and J. Euzenat (Eds.): ESWC 2005, LNCS 3532, pp. 257–271, 2005. © Springer-Verlag Berlin Heidelberg 2005.

Information Object Design Pattern

tion specific and too much biased towards the purpose of the application. ... realized when a web designer creates the web site in HTML, i.e. once an actual in-.

93KB Sizes 1 Downloads 179 Views

Recommend Documents

Information Object Design Pattern
nologies and object-oriented software engineering closer together. ... The information object carries meaning on the cognitive levels of the agent. Agent refers to ...

Object Design
Concurrency. • Hardware/Software Mapping. • Persistent .... Analysis activity. Design. Inheritance for Reuse. Taxonomy. I l i. Specification. Inheritance ... List. “Already subclassing the Stack class from the List class and providing three met

Pluralsight design pattern
Infirmof purpose. Give methe daggers thesleeping and the dead Are but has pictures. 'tis theeye ofchildhood That fearsa painted devil. Late night drunks.Recovery jamesarthur. ... Onefootatatime, I step onto thecoarse block..506539936392720973 Batch d

Object Design
Hardware/Software Mapping. • Persistent Data Management. • Global Resource Handling and Access Control. • Software Control. • Boundary Conditions .... Service specification. Used during object design. – Used during object design. – Activi

head first design pattern pdf
File: Head first design pattern pdf. Download now. Click here if your download doesn't start automatically. Page 1 of 1. head first design pattern pdf. head first ...

Design Patterns in Ruby: State Pattern - GitHub
State Method Example. Remember Street. Fighter II special moves? .... State pattern http://www.ruby-doc.org/stdlib-1.9.3/libdoc/delegate/rdoc/Delegator.html.

Interactive Visual Object Search through Mutual Information ...
Oct 29, 2010 - Figure 1: Illustration of our discriminative mutual infor- mation score ... query object class. ... one nearest neighbor is considered in both classes.

object oriented design in ruby.pdf
object oriented design in ruby.pdf. object oriented design in ruby.pdf. Open. Extract. Open with. Sign In. Main menu. Displaying object oriented design in ...