Notes from the OASIS
WSRF TC Teleconference
July 12th 2004
Roll call
The roll call is kept on the TC web site
under the meeting record.
See
http://www.oasis-open.org/apps/org/workgroup/wsrf/event.php?event_id=5432
Phone: TomF, SimonLaws, Mario (epcc), DavidLevine.
Irc: SueM
Ian, Alan Weissberger, Steveg, TomM, Alan Regnier,
Latha, Lily,SamMeder, Abdeslem, Willliam, Jem, BryanMurray,William, Martin, Anish,
Hide, Tim, Igor, Roger Mendez, Dave Snelling,
Approval of minutes from previous meeting (12th
July)
See: http://www.oasis-open.org/apps/org/workgroup/wsrf/download.php/7732/
There were no comments and no objections to approving the
minutes.
Other Action Review
There were no comments on the minutes and no objections to
approving them.
(Bryan) Move
issue 16 to ‘resolved’, issues 23 & 34 to ‘closed’ & issue 48 to ‘open’
Done
(Bryan) Open
new issue as a result of the requirement from WSDM: Ability to register for
notification when any of the properties changes. Done (issue 55)
(SteveG) Draft detailed proposal for new ops to resolve Issue
21: Factoring of SetResourceProperties. Publish to mailing list. Done
(SamM) Propose resolution text for issue 48 (Nillable
properties). Publish to mailing list. Outstanding (but See below)
(IanR) Cancel phone call on July 26th Done
(SamM) Publish a list of the errata on the
published drafts to the mailing list. Done
Agenda bash and Call for AOB
(MatinC): Is the document management sorted
out.
(DaveS). Document review is described in
the issues document
(MartinC) Please can we discuss because
tracking continuous small changes is hard. We need a plan for a document
release cycle.
(DaveS) Agreed.
Issue review
Issue 48: Nillable properties
(SamM): The document is fine if the – just needs some
explanatory information. Is thi
(TimB): We can produce a document containing this kind of
non-normative information. Please publish material to
( ): What’s the difference. Whitepapaer explains concepts
and puts stakes in the ground, tuseful for explaining what the WSRF TC is
about. It is not a deliverable of the TC.
A primer could be deliverable of the TC, nad
(?1) In other OASIS TCs, this has been called an
implementers guide. How are return codes interpreted etc.
(DaveS) we are gathering information for such a document.
Action: (Bryan) Re-categorise the issue as an
application note and (Alan Wiessberger) create an issue to discuss the
creation of a ‘Usage Notes’ document.
Issue 4: GetResourceProperty on property document with xsd:any
(SteveG) Properties can be made dynamically visible – for
example a stack trace is useful, but not obviously part of the resource
property. The question is how to respond to a request for a property which does
not exist. One proposal is to return a fault, or return an empty element (since
the property is potentially there).
(William) It is useful to diagnose typos in requests.
(Anish) Getting an any is the same as a property that is
optional, but not present.
(TomM) It should be up to the implementer to decide the
meaning of any.
(SteveG) Need to distinguish the use cases between dynamic
properties and extensibility. An extensibility use should reject unknown
requests.
(DaveS) extensibility is guaranteed by the ‘cut and paste’
rule.
(SteveS) a) for minoccurs=0 a nil response is right (Agreed)
b) For an instance document with a dynamic ‘stacktrace’ a
request for ‘stooktrace’ should return an error.
c) What if there is a request for a property that sometimes
is present
(TomM) The server may behave as if its there, or if its not.
It may even depend on the timing of the request vs the creation of the property
by the service we can only describe what the service could do.
Action: Steve to propose text. (Hopefully, for review
later in the meeting)
Issue 9: Need an API to list all properties
(DaveS) Reads proposed recommendations from Steve here:
http://www.oasis-open.org/archives/wsrf/200406/msg00070.html
(TimB) What is the use case – what are the ‘metrics’ that
can exploit these dynamic properties?
(WilliamV) An example is a printer in front of which is
placed a proxy which counts pages. A printer might have paper size, speed and
‘any’ published on a dmtf site. The any can be used to hold a newly-invented
page count.
(SteveG) this seems the same as issue 4 – asking the service
if a qname is valid as a property name.
(Anish) Perhaps we need a different extensibility mechanism
(rather than xsd:any).
(SteveG) We chose xsd:any because the document can still be
validated when xsd:any is included as a child element - xsd: any fits the
bill.
(Anish) But we’re not valdating the document that comes back
to the client.
(DaveS) but the client can validate the property values.
(SteveG) If the printer designers want to introduce a new
property they can cut and paste (WSDL1.1) document and extend it, or they can
introduce it via the any, and always call it dynamic.
(MartinC)We sould have more restrictive ‘any’s in
application-specific domains (such as WSDM or a manufacturer-extension).
(DavaS) Yes, but we are defining a general mechanism.
We need to decide: Do we need a scheme for obtaining the
info
Is it Via resource property or via operation
Do we need qnames known by the service, present at the
service, and do we need to set the schema.
(TomM) It’s not clear what the schema would add over the qname
+ schemalocation – the clients mostly can’t use the schema dynamically to
discover the meaning of the property.
(IanR) We need to distinguish the need to know which properties
are defined, and issue 27 which is about the properties currently ‘present’
(non-empty).
(William) there are three issues. Get ‘known’ properties,
get ‘present’ properties, and get all the values.
(TomM)we need to rationalize the term ‘present’ vs ‘known’
which is interesting in the case of minoccurs=0. This would produce an empty
response.
(SteveG) Is there a distinction between ‘present’ and
‘known’ if we include ‘empty’ as a valid response.
(Anish) ‘Known’ would return all qnames – even those created
dynamically.
(IanR) Seem agreed that issue 9 is a requirement. We need to
discuss the details.
(long…) discussion produced this picture:
Where
§
R1 is <GetRPResponse/> (A response to a
request for a property which has minoccurs=0 and for which there are no
property values.)
§
R2 is a reponse to a request for a non-nill value
element.
<getRPResponse>
<tns:something/>
</getRPResponse>
§
R3 is a in response to a request for a value which
is nill:
<getRPResponse>
<tns:something xsi:nil=true/>
</getRPResponse>
§
R4 is a ‘Qnames not recognised’ fault.
(SteveG)
Proposed we need two resource properties:
- WSRP: AllowedRPQnames
- WSRP: PresentRPQNames
Neither is required, and either can be present without the
other.
Both properties would be lists of structures of two values,
a url indicating a qname and a url indicating schemalocation.
We also need to address the need for minoccurs/maxoccurs of
the property.
Action: (Martin Chapman) Need a new issue to address
Schema discovery on a dynamic property., including the cardinality within the
RP document – need more information in the Allowed/Present RPQNames variables.
(Igor) Do we need this minoccurs/maxoccurs/nillable info? –
it could be simply read from an offline specification (description) of the
service written in English.
(Anish) Then why do we bother in the case of the statically
declared RPs?
(steveG) A solution to the new issue is to define an
operation GetRPDecl(QName) which returns an xsd:element with the additional
information on it.
(DaveS) We are going to add this stuff:
Proposed a) A new resource property – allowedRPQNames,
ie those which will not throw ‘unknown resource’ fault.
This properties will return the relevant RP QNames and the schemalocation.
(No objections)
Proposed b) A new resource property – presentRPQNnames,
which indicates a property of the relevant name in the instance document.
This property will return the relevant RP QNames and the schemalocation.
(No Objections)
Proposed c) A capability - GetRPDecl (QName) - to
return the current RP document declaration ( minoccurs/maxoccurs/nillable etc)
for each QName requested.
(No Objections)
Issue 10: Mechanism to express metadata on properties such as ‘Read Only’
(IanR)Where can we put this information
(SteveG) In OGSi, putting it into the schema broke xml
tooling because it exploited open content – it needs to go into a different
document. We need to agree what the properties are and where to put them are,
for example: 1) ‘Appinfo’ in the xsd schema (which is a child of annotation) 2)
Use the ‘any’ attribute, but tools really don’t like the latter. 3) A separate
metadata document.
(William) are these things needed at design time, run time
or both.
(SteveG) Both.
(Igor) So we could use the annotation at design time and
pull out the attributes into a separate document at runtime, if needed?
(SteveG) Yes, that could be done.
(DaveS) Can the metadata be out into the new GetRPDecl(QName)
operation.
(SteveG) Yes. But that leave the design time question.
Having one document (all in the Schema) is neat, but so is the ability to
deploy a service independently from the design stage which suggests a separate
deployment document.
(DaveS) There may be some properties which are invariant wrt
implementation – eg current time is read only – it can’t be made settable.
(SteveG) Yes, but there’s a lot that is independent.
(Lily) Will the attreibutes be extensible
(SteveG) Yes, They need to be.
(DaveS) Proposed: To add metadata to the RP
declaration.
(No objections)
Action: (TomMaguire) Write a description of a new
metadata document to hold the info, and an operation for runtime access.
(DaveS) So the properties in OGSi were: Modifyable
(Boolean), Mutability (static, constant, extendable, mutable)
(Igor) Insertable, deletable, updateable?
(SteveG) xsd:default only works for simple types, but many
properties will be complex types, so we need another mechanism.
(TomM) Schema defaults are for the use of the schema
processor, it is not present in an instance document, but is inferred in the
PSVI (post-schema validation infoset) at the client.
Action: This meaning of ‘default’ use of needs to be elucidated.
Need a new issue on the list (MartinC)
(DaveS) Do we need a facility for data in the WSDL?
(Igor) No – the client only needs one round trip to get the
value - it should be the same as a constant (unchanging) value set at service initialisation.
(DaveS) But it may be useful to be able to specify this at
design time. The list seems to be:
§
Insertable:bool
§
Updateable: bool
§
Deleteable: bool
§
Readable: bool
§
Initial Value(s): <any>
§
Constant: bool
§
ValidValue: <any> (??)
Action: TomMaguire – write a proposal. – including
how to get these values which was not discussed.
Issue 21 Splitting SetResourceProperties
(IanR) A proposal was published by Steve to introduce
set/update/delete methods:
http://www.oasis-open.org/archives/wsrf/200407/msg00065.html
Proposed: to accept this as the text:
(except for a few small typos to be noted to SteveG) No
objections
Recessed at 17:03 to reconvene at 9:00 am.
Review New issues since last telecom
Any Other Business
Meeting closed
Summary of actions