sca-assembly message
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
| [List Home]
Subject: [ISSUE 16] Component URI is not well described. Proposal
- From: Mike Edwards <mike_edwards@uk.ibm.com>
- To: "OASIS Assembly" <sca-assembly@lists.oasis-open.org>
- Date: Tue, 23 Sep 2008 15:02:04 +0100
Folks,
I took an action to pull together a
resolution for Issue 16 based on previous discussions.
This is the proposal.
High Level:
It is proposed that SCA defines 2 URIs:
1) structuralURI
2) bindingURI
structuralURI
Structural URI is a URI that describes
each use of a given component in the Domain. It is never
specified explicitly, but it calculated
from the configuration of the components configured into the
Domain.
The structural URI may be used to separately
identify each use of a component - for
example, the structural URI may be used
to attach different policies to each separate use of a
component.
For components directly in the domain,
the structural URI is simply the name of the component.
Where components are nested within a
composite which is used as the implementation of a
higher level component, the structural
URI consists of the name of the nested component prepended
with each of the names of the components
upto and including the domain level component.
For example, given a component named
Component1 which is part of Composite1 used as an
implementation by Component2 which is
part of Composite2 which is itself used as the implementation
of Component3 which is at the domain
level, the structural URIs are as follows:
a) Component1: Component3/Component2/Component1
b) Component2: Component3/Component2
c) Component3: Component3
The structural URI can also be extended
to refer to a specific service of a component, by appending
the name of the service to the component's
structural URI.
bindingURI
SCA Bindings specifications can choose
to use the structural URI defined above to derive some binding
specific URI according to some Binding-related
scheme. The relevant binding specification describes
this.
In addition, <binding/> elements
have an optional @URI attribute, which is termed a bindingURI.
If the bindingURI is specified on a
given <binding/> element, the binding may use it to derive an
endpoint URI relevant to the binding.
The derivation is binding specific and is described by the
relevant binding specification.
For binding.sca, which is described
in the SCA Assembly specification, this is as follows:
If the binding uri attribute is
specified on a reference, it identifies the target service in the SCA domain
by
specifying either the service's structural
URI or an alias for the structural URI.
If the binding uri attribute is specified
on a service, it is ignored.
structural URI Aliases
structural URIs can be used for a number
of purposes. Concentrating on their use for administration
and management purposes, it is required
that a given component instance can be given a URI
which does not change even if the structure
of the artifacts in the domain does get changed.
This "unchanging" URI is called
a "URI Alias" - effectively it is a "fixed"
URI that maps to a specific structural
URI - it is a kind of Map.
URI Aliases are declared at the Domain
level - in a Definitions file.
Each Alias is declared using an <alias/>
element as a child of a
<definitions/> element (logically
at the Domain level):
<alias aliasURI="xs:string"
actualUri="xs:string"/>
- this is a simple mapping from the
(unchanging) aliasURI to the actual
structural URI of some component
- if the component moves due to some
deployment activity, the aliasURI remains unchanged and stable,
but the actualURI needs updating to
point to the new location of the component.
Detailed Proposal:
This will take a lot of engineering
of a spec document.
I will do this once we agree on the
high level stuff above.
Yours, Mike.
Strategist - Emerging Technologies, SCA & SDO.
Co Chair OASIS SCA Assembly TC.
IBM Hursley Park, Mail Point 146, Winchester, SO21 2JN, Great Britain.
Phone & FAX: +44-1962-818014 Mobile: +44-7802-467431
Email: mike_edwards@uk.ibm.com
Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number
741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6
3AU
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
| [List Home]