contained
type: ObjectProperty
comment: An address may be contained in the message envelope.
domain: NetworkAddress
range: Message_Transport

associated_policy
type: ObjectProperty
comment: A message may have a delivery policy associated with it (2.3.1.3.2)
range: Delivery_Policy
domain: Message

constrained_by
type: ObjectProperty
comment: A message transport is constrained by various delivery policies
range: Delivery_Policy
domain: Message_Transport

contains
type: ObjectProperty
comment: Delivery policy constrains message transport - 2.3.1.2.2
domain: Delivery_Policy
range: Message_Transport

contained_by
type: ObjectProperty
comment: A message body is contained by the message envelope
domain: Message_Body
range: Message_Envelope

contained
type: ObjectProperty
comment: An address may be contained in the message envelope.
domain: Address
range: Message_Envelope

body
type: ObjectProperty
comment: a message envelope may contain address information about the intended recipients of its associated message
inverse of: contained

body
type: ObjectProperty
comment: A message envelope contains the body of the message
inverse of: contained_by

contained_by
type: ObjectProperty
comment: A message body is the application-specific content intended for the message recipient.
range: Language
domain: Message_Body

associated_policy
type: ObjectProperty
comment: Message correlation may be realized by including message identifiers to enable messages to be identified
domain: Message
range: Identifier

describe_service_invocation
type: ObjectProperty
comment: A message exchange pattern may describe a service invocation
range: Service_Invocation
domain: Message_Exchange_Pattern

contains
type: ObjectProperty
comment: a message may be described using a service description language. There is no concept that represents service description language.
range: ServiceDescriptionLanguage
domain: Message

contains
type: ObjectProperty
comment: Delivery policy constrains message transport - 2.3.1.2.2
range: PolicyDescriptionLanguage
domain: Delivery_Policy

has_identifier
type: ObjectProperty
comment: a message may have an identifier (2.3.1.3.2)
domain: Message
range: Identifier

header
type: ObjectProperty
comment: A message envelope contains the message headers
domain: Message_Envelope
range: Message_Header

header_of
type: ObjectProperty
comment: A message header is contained in a message envelope
inverse of: header

mep_identifier
type: ObjectProperty
comment: A message exchange parttern should have a unique identifier
domain: Message_Exchange_Pattern
range: Identifier

message_body
type: ObjectProperty
comment: a message has a message body (2.3.1.3.2)
domain: Message
range: Message_Body

envelope
type: ObjectProperty
comment: A message has a message envelope (2.3.1.3.2)
domain: Message
range: Message_Envelope

headers
type: ObjectProperty
comment: a message has zero or more message headers (2.3.1.3.2)
domain: Message
range: Message_Header

message_recipients
type: ObjectProperty
comment: a message has one or more message recipients We assume that Message Recipient is the same of Message Receiver
domain: Message
range: Message_Receiver

message_sender
type: ObjectProperty
comment: a message has a message sender
domain: Message
range: Message_Sender

delivered_by
type: ObjectProperty
comment: A message is delivered by a message transport system (2.3.1.3.2) I assume that "transport system" is actually Message Transport
domain: Message
range: Message_Transport

originator_of
type: ObjectProperty
comment: A message sender is the originator of a message
inverse of: message_sender

part_of_sequence
type: ObjectProperty
comment: message may be part of a message sequence
domain: Message
range: Message_Sequence

realize_correlation
type: ObjectProperty
comment: A message exchange pattern may realize a message correlation
range: Message_Correlation
domain: Message_Exchange_Pattern

realize_mep
type: ObjectProperty
comment: A message sequence may realize a documented message exchange pattern
range: Message_Exchange_Pattern
domain: Message_Sequence

contained
type: ObjectProperty
comment: An address may be a URI.
range: URI
domain: Address

realized_by
type: ObjectProperty
comment: Message reliability may be realized by a transport mechanism We assume that "transport mechanism" is equivalent to message transport
domain: Message_Reliability
range: Message_Transport

recipient
type: ObjectProperty
comment: A message receiver is the recipient of the message
inverse of: message_recipients

reliability_realized_by_
type: ObjectProperty
comment: message reliability may be realized by a combination of message acknowledgement and correlation.
domain: Message_Reliability
range: Class
  union of: Message Acknowledgement
  union of: Message_Correlation

service_role
type: ObjectProperty
comment: a message header may identify a service role, which denotes the kind of processing expected for the header.
domain: Message_Header
range: Service_Role

has_a
type: ObjectProperty
comment: a policy may define a capability
domain: Policy
range: Capability

constraints
type: ObjectProperty
comment: a policy is a constraint on the allowable actions or states of an agent or person or organization (interpreted as: a policy constraints the actions performed by an agent)
domain: Policy
range: Action

control
type: ObjectProperty
comment: A permission guard controls one or more resources
domain: Permission_Guard
range: Resource

has_a
type: ObjectProperty
comment: a policy description describes a policy
domain: Policy
range: Policy_Description

has_a
type: ObjectProperty
comment: a policy description describes a policy
inverse of: has_a

monitor
type: ObjectProperty
comment: a permission may enable one or more actions
domain: Permission
range: Action

monitor
type: ObjectProperty
comment: a permission may enable one or more allowable states
range: State
domain: Permission

enforce
type: ObjectProperty
comment: A permission guard is a mechanism that enforces permissive policies
range: Permission
domain: Permission_Guard

has_a
type: ObjectProperty
comment: A policy guard has an owner responsible for establishing the guard.
range: Person_or_Organization
domain: Policy_Guard

has_identifier
type: ObjectProperty
comment: A policy may have an identifier.
domain: Policy
range: Identifier

member_of
type: ObjectProperty
comment: A person or organization belongs to a domain.
range: Domain
domain: Person_or_Organization

monitor
type: ObjectProperty
comment: An audit guard may monitor one or more resources (2.3.4.1.2)
domain: Audit_Guard
range: Resource

owner
type: ObjectProperty
comment: A person or organization may be the owner of an agent.
domain: Person_or_Organization
range: Agent

define
type: ObjectProperty
comment: A domain defines the scope of application of zero or more policies.
domain: Domain
range: Policy

realized_by
type: ObjectProperty
comment: Discovery may be realized using a discovery service
domain: Discovery
range: Discovery_Service

governed_by
type: ObjectProperty
comment: a resource may be governed by zero or more policies
range: Policy
domain: Resource

identifier
type: ObjectProperty
comment: a resource has an identifier
inverse of: identify

identify
type: ObjectProperty
comment: an identifier identifies a resource that is relevant to the architecture
domain: Identifier
range: Resource

owned_by
type: ObjectProperty
comment: a resource is owned by a person or an organization
range: Person_or_Organization
domain: Resource

performed_by
type: ObjectProperty
comment: Discovery may be performed by an agent, or by an end-user
domain: Discovery
range: Agent

publish
type: ObjectProperty
comment: A discovery service is used to publish descriptions
domain: Discovery_Service
range: Resource_Description

realized_by
type: ObjectProperty
comment: an identifier should be realized a URI
range: uriReference
type: DatatypeProperty
domain: Identifier

representation
type: ObjectProperty
comment: a resource may have a representation
domain: Representation
range: Resource

representation
type: ObjectProperty
comment: a resource may have zero or more representations
inverse of: representation

representation
type: ObjectProperty
comment: a resource may have zero or more resource description
domain: Resource
range: Resource_Description

search
type: ObjectProperty
comment: A discovery service is used to search for resources
domain: Discovery_Service
range: Resource_Description

used by
type: ObjectProperty
comment: A discovery service may be used by an agent
domain: Discovery_Service
range: Agent

has_identifier
type: ObjectProperty
comment: a capability can be advertised by an agent that supports it
domain: Agent
range: Capability

associated_with
type: ObjectProperty
comment: a service role is a set of service tasks
domain: Service_Role
range: Service_Task

has_identifier
type: ObjectProperty
comment: a capability has a description of its semantics
range: Capability_Semantics
domain: Capability

define
type: ObjectProperty
comment: A service interface defines the message relevant to the service
range: Message
domain: Service_Interface

desired_goal_state
type: ObjectProperty
comment: a goal state is desired by some person or organization which has an interest in defining it.
range: Person_or_Organization
domain: Goal_State

uses
type: ObjectProperty
comment: A choreography may be expressed in a choreography description language
range: ChoreographyDescriptionLanguage
domain: Choreography

has_identifier
type: ObjectProperty
comment: a capability may be @@referenced@@ by a service description
range: Capability
domain: Service_Description

has_identifier
type: ObjectProperty
comment: a capability has a identifier which is a URI
range: Identifier
domain: Capability

has_owner
type: ObjectProperty
comment: An agent has an owner that is a person or organization
inverse of: owner

has_role
type: ObjectProperty
comment: A service intermediary adopts a specific service role.
domain: Service_Intermediary
range: Service_Role

owns
type: ObjectProperty
comment: a provider entity offers a Web service
domain: Provider_Entity
range: Service

owned_by
type: ObjectProperty
comment: A service is owned by a person or an organization
range: Person_or_Organization
domain: Service

acts_on_behalf
type: ObjectProperty
comment: a provider agent acts on behalf of a provider entity
domain: Provider_Agent
range: Provider_Entity

perform_task
type: ObjectProperty
comment: A service performs one or more tasks Here I assume that "task" is infact "service task"
domain: Service
range: Service_Task

policies
type: ObjectProperty
comment: A service may have one or more policies applied to it
range: Policy
domain: Service

has_role
type: ObjectProperty
comment: A service intermediary preserves the semantics of messages it receives and sends.
range: Message_Semantics
domain: Service_Intermediary

provided_by
type: ObjectProperty
comment: A service is provided by a person or an organization
range: Person_or_Organization
domain: Service

acts_on_behalf
type: ObjectProperty
comment: a requester agent acts on behalf of a requester entity
domain: Requester_Agent
range: Requester_Entity

realize_service
type: ObjectProperty
comment: An agent may realize zer or more services
domain: Agent
range: Service

realized_by
type: ObjectProperty
comment: a service is realized by a provider agent.
inverse of: realize_service

request_service
type: ObjectProperty
comment: An agent may request zer or more services
domain: Agent
range: Service

has_identifier
type: ObjectProperty
comment: a capability can be required by agent that wishes to use it
domain: Agent
range: Capability

result
type: ObjectProperty
comment: An action may result in a desired goal state
domain: Action
range: Goal_State

sd_expressed_in
type: ObjectProperty
comment: a service description may include a description of the service's semantics
range: ServiceDescriptionLanguage
domain: Service_Description

description_service_interface
type: ObjectProperty
comment: a service description is a machine-processable description of the service's interface
domain: Service_Description
range: Service_Interface

service_description_semantics
type: ObjectProperty
comment: a service description may include a description of the service's semantics
domain: Service_Description
range: Service_Semantics

service_semantics_of
type: ObjectProperty
comment: a service semantics should be identified in a service description
inverse of: service_description_semantics

service_description
type: ObjectProperty
comment: A service has a service description
domain: Service
range: Service_Description

description_service_interface
type: ObjectProperty
comment: a service description is a machine-processable description of a service
inverse of: service_description

service_identifier
type: ObjectProperty
comment: A service has a service identifier Here I assume that "service identifier" is the same of the resource model "identifier"
range: Identifier
domain: Service

service_interface
type: ObjectProperty
comment: A service has a service interface
domain: Service
range: Service_Interface

service_role
type: ObjectProperty
comment: a service has one or more service roles in relation to the service's owner
domain: Service
range: Service_Role

service_semantics
type: ObjectProperty
comment: A service has a service semantics
domain: Service
range: Service_Semantics

about
type: ObjectProperty
comment: Approximation of the following statement: a service semantics describes the intended effects of using a service
inverse of: service_semantics

associated_with
type: ObjectProperty
comment: a service role may be established by a service owner
range: Person_or_Organization
domain: Service_Role

associated_with
type: ObjectProperty
comment: a service semantics may be described in a formal, machine-processable language
range: ServiceSemanticsDescriptionLanguage
domain: Service_Semantics

service_interface
type: ObjectProperty
comment: a service task has a service interface
range: Service_Interface
domain: Service_Task

used_by
type: ObjectProperty
comment: a service is used by a requester agent.
inverse of: request_service

uses
type: ObjectProperty
comment: A choreography uses one or more service interfaces
domain: Choreography
range: Service_Interface

Goal_State
type: Class
subclass of: State
comment: a goal state is a state of the real world, which includes the state of relevant resources

Message
type: Class
subclass of: Restriction
  on property: message_body
  cardinality: 1
subclass of: Restriction
  on property: message_sender
  cardinality: 1
subclass of: Restriction
  on property: envelope
  cardinality: 1
subclass of: Restriction
  on property: delivered_by
  cardinality: 1
subclass of: Restriction
  on property: message_recipients
  min cardinality: 1

Provider Entity
type: Class
subclass of: Restriction
  on property: owner
  all values from: Provider_Agent
comment: a provider entity owns a provider agent

Requester Entity
type: Class
subclass of: Restriction
  on property: owner
  all values from: Requester_Agent
comment: a provider entity owns a provider agent

Service
type: Class
subclass of: Restriction
  on property: service_description
  cardinality: 1
subclass of: Restriction
  on property: service_role
  min cardinality: 1
subclass of: Restriction
  on property: policies
  min cardinality: 1
subclass of: Restriction
  on property: perform_task
  min cardinality: 1
comment: A service performs ONE OR MORE TASKS
comment: A service has A (ONE) service description
comment: a service has one or more service roles in relation to the
comment: A service may have one or more policies applied to it

ServiceModel.owlService Intermediary
type: Class
subclass of: Message_Receiver
subclass of: Message_Sender
comment: a message sender may be an intermediary I represent this with a subclass so that some message senders are intermediaries, and others are not. Though I also assume that all intermediaries are message receivers, which sounds quite reasonable.
comment: a message receiver may be an intermediary We represent this with a subclass so that some message recipients are intermediaries, and others are not. Though we also assume that all intermediaries are message receivers, which sounds quite reasonable.

Language
type: Class
comment: A place holder for content of a message body.

Capability_Semantics
type: Class
subclass of: Language
comment: A place holder for Capability Semantics

ChoreographyDescriptionLanguage
type: Class
subclass of: Language
comment: A place holder for Choreography Description Language

Language
type: Class
comment: A place holder class for Computational Resource

Language
type: Class
comment: A place holder for languages described in the architecture specification.

Language
type: Class
comment: Represents Message Acknowledgements

Message_Semantics
type: Class
subclass of: Language
comment: A place holder for Message Semantics

NetworkAddress
type: Class
comment: An Network address is that information required by a message transport mechanism in order to deliver a message appropriately.

PolicyDescriptionLanguage
type: Class
subclass of: Language
comment: A place holder for Policy Description Language

Language
type: Class
comment: A place holder for Semantics

ServiceDescriptionLanguage
type: Class
subclass of: Language
comment: A place holder for Service Description Language

ServiceSemanticsDescriptionLanguage
type: Class
subclass of: Language
comment: A place holder for Service Semantics Description Language

Service_Invocation
type: Class
comment: A place holder for Service Invocation

State
type: Class
comment: A place holder for State

URI
type: Class
subclass of: NetworkAddress
comment: A form of network address

Address
type: Class
comment: An address is that information required by a message transport mechanism in order to deliver a message appropriately.

Delivery_Policy
type: Class
subclass of: Policy
comment: A delivery policy is a policy that constrains the methods by which messages are delivered by the message transport.

Message
type: Class
comment: A message is the basic unit of data sent from one Web services agent to another in the context of Web services.

Message_Body
type: Class
comment: A message body is the structure that represents the primary content that the message sender intends to deliver to the message recipient.

Message_Correlation
type: Class
comment: Message correlation is the association of a message with a context. Message correlation ensures that a requester agent can match the reply with the request, especially when multiple replies may be possible.

Message_Envelope
type: Class
comment: A message envelope is the structure that encapsulates the component parts of a message: the message body and the message headers.

Message_Exchange_Pattern
type: Class
comment: A Message Exchange Pattern (MEP) is a template, devoid of application semantics, that describes a generic pattern for the exchange of messages between agents. It describes the temporal and causal relationships, if any, of multiple messages exchanged in conformance with the pattern, as well as the normal and abnormal termination of any message exchange conforming to the pattern.

Message_Header
type: Class
comment: A message header is the part of the message that contains information about a specific aspect of the message. Message headers may be available to potential intermediaries that also process the message.

Message_Receiver
type: Class
subclass of: Agent
comment: A message Receiver is an agent that receives a message

Message_Reliability
type: Class
comment: Message reliability is the degree of certainty that a message will be delivered and that sender and receiver will both have the same understanding of the delivery status. Message reliability is a property of message delivery.

Message_Sender
type: Class
subclass of: Agent
comment: A message sender is the agent that transmits a message
comment: A message sender is an agent

Message_Sequence
type: Class
comment: A message sequence is a sequence of related messages

Message_Transport
type: Class
comment: A message transport is a mechanism that may be used by agents to delivers messages

Audit_Guard
type: Class
subclass of: Policy_Guard
comment: An audit guard is a mechanism used on behalf of an owner that monitors actions and agents to verify the satisfaction of obligations
comment: An audit guard is a policy guard.

Domain
type: Class
subclass of: List
subclass of: Restriction
  on property: first
  all values from: Class
    union of: Resource
    union of: Agent
comment: A domain is a set of agents and/or resources that is subject to constrains of one or more policies.

Obligation
type: Class
subclass of: Policy
comment: An obligation is a kind of policy that prescribes actions and/or states of an agent and/or resource.
comment: An obligation of a type of policy

Permission
type: Class
subclass of: Policy
comment: A permission is a kind of policy that relates to the allowed actions and states of an agent and/or resource. (2.3.4.5.1)
comment: An obligation of a type of policy (2.3.4.5.2)

Permission_Guard
type: Class
subclass of: Policy_Guard
comment: A permission guard is a mechanism deployed on behalf of an owner that enforces permission policies.
comment: A permission guard is a policy guard

Person_or_Organization
type: Class
comment: A person or organization may be the owner or agents that provide or request Web services.

Policy
type: Class
comment: A policy is a constraint on the behavior of agents.

Policy_Description
type: Class
comment: A policy description is a machine-processable description of a policy or set of policies

Policy_Guard
type: Class
comment: A policy guard is a mechanism deployed on behalf of an owner that enforces a policy (or set of policies). A policy guard is a mechanism that enforces policies. (2.3.4.9.2)

Discovery
type: Class
comment: Discovery is the act of locating a machine-processable description of a Web service-related resource that may have been previously unknown and that meets certain functional criteria. It involves matching a set of functional and other criteria with a set of resource descriptions. The goal is to find an appropriate Web service-related resource

Discovery_Service
type: Class
subclass of: Service
comment: A discovery service is a service that enables agents to retrieve Web service-related resource descriptions
comment: A discovery service is a service

Identifier
type: Class
comment: An identifier is an opaque string of bits that may be used to associate with a resource.

Representation
type: Class
comment: A representation is a piece of data that describes a resource state.

Resource
type: Class
comment: A resource is defined by [RFC 2396] to be anything that can have an identifier. Although resources in general can be anything, this architecture is only concerned with those resources that are relevant to Web services and therefore have some additional characteristics. In particular, they incorporate the concepts of ownership and control: a resource that appears in this architecture is a thing that has a name, may have reasonable representations and which can be said to be owned. The ownership of a resource is critically connected with the right to set policy on the resource.

Resource_Description
type: Class
comment: A resource description is any machine readable structure that may permit resources to be discovered. Resource descriptions may be of many different forms, tailored for specific purposes, but all resource descriptions must contain the resource's identifier. (2.3.3.6.1)

Action
type: Class
comment: An action, for the purposes of this architecture, is any action that may be performed by an agent, possibly as a result of receiving a message, or which results in sending a message or other observable state change.

Agent
type: Class
subclass of: Language
subclass of: Resource
comment: And agent is a program acting on behalf of another person, entity, or process

Capability
type: Class
comment: A capability is a named piece of functionality (or feature) that is declared as supported or requested by an agent.

Choreography
type: Class
comment: A choreography defines the sequence and conditions under which multiple cooperating independent agents exchange information in order to achieve some useful function.

Goal_State
type: Class
comment: A goal state is a state of some service or resource that is desireable from some person or organization's point of view.

Agent
type: Class
subclass of: Action
comment: An action may be the processing of a received message

Provider_Agent
type: Class
subclass of: Agent
comment: A provider agent is an agent that is capable of and empowered to perform the actions associated with a service on behalf of its owner the provider entity.

Provider_Entity
type: Class
subclass of: Person_or_Organization
comment: The provider entity is the person or organization that is providing a Web service.

Requester_Agent
type: Class
subclass of: Agent
comment: A requester agent is a software agent that wishes to interact with a provider agent in order to request that a task be performed on behalf of its owner the requester entity

Requester_Entity
type: Class
subclass of: Person_or_Organization
comment: The requester entity is the person or organization that wishes to use a provider entity's Web service.

Agent
type: Class
subclass of: Action
comment: An action may be the sending of a message

Service
type: Class
subclass of: Resource
comment: A service is a resource
comment: A service is an abstract resource that represents a capability of performing tasks that represents a coherent functionality from the point of view of provider entities and requester entities. To be used, a service must be realized by a concrete provider agent.

Service_Description
type: Class
comment: A service description is a set of documents that describe the interface to and semantics of a service.

Service_Interface
type: Class
comment: A service interface is the abstract boundary that a service exposes. It defines the types of messages and the message exchange patterns that are involved in interacting with the service, together with any conditions implied by those messages.

Service_Intermediary
type: Class
subclass of: Service
comment: A service intermediary is a Web service whose main role is to transform messages in a value-added way. (From a messaging point of view, an intermediary processes messages en route from one agent to another.) Specifically, we say that a service intermediary is a service whose outgoing messages are equivalent to its incoming messages in some application-defined sense.

Service_Role
type: Class
subclass of: Service_Task
comment: a service role is a set of service tasks
comment: A service role is an abstract set of tasks which is identified to be relevant by a person or organization offering a service. Service roles are also associated with particular aspects of messages exchanged with a service.

Service_Semantics
type: Class
comment: The semantics of a service is the behavior expected when interacting with the service. The semantics expresses a contract (not necessarily a legal contract) between the provider entity and the requester entity. It expresses the intended real-world effect of invoking the service. A service semantics may be formally described in a machine readable form, identified but not formally defined, or informally defined via an `out of band' agreement between the provider entity and the requester entity.

Service_Task
type: Class
subclass of: Action
comment: A service task is an action or combination of actions that is associated with a desired goal state. Performing the task involves executing the actions, and is intended to achieve a particular goal state.