You are viewing a plain text version of this content. The canonical link for it is here.
Posted to muse-commits@ws.apache.org by da...@apache.org on 2006/06/12 18:12:21 UTC

svn commit: r413698 [1/7] - in /webservices/muse/trunk/modules/muse-wsrf: specs/ src/org/apache/muse/ws/resource/ src/org/apache/muse/ws/resource/basefaults/ src/org/apache/muse/ws/resource/ext/ src/org/apache/muse/ws/resource/ext/faults/ src/org/apach...

Author: danj
Date: Mon Jun 12 09:12:15 2006
New Revision: 413698

URL: http://svn.apache.org/viewvc?rev=413698&view=rev
Log:
Initial check-in of IBM-donated code for Muse 2.0 - with 
support for Axis2 (re-try after failure due to problem 
with email to muse-commits).

Currently, the modules that are not implementations of the 
WS-* specs - core, utils, WS-A/SOAP, etc. - have working 
Maven 2.0 build files. Right now they simply compile and 
write to the user's local $module/build directory. I have 
not determined how to get Maven to skip this intermediary 
copy and just put the jars in the user's local repository.

I currently use a script to build each module's POM file, 
but as I learn more about Maven I will hopefully find a way 
to aggregate POM files into one larger project. If not, I 
will provide a simple Ant script.

I'm not sure where the design doc should go, and don't 
want to mess with the web site yet, so please look at the 
design-doc.zip that was uploaded to JIRA along with the 
other IBM contributions until I determine the proper place.

Added:
    webservices/muse/trunk/modules/muse-wsrf/specs/WS-ResourceLifetime-1_2.xsd
    webservices/muse/trunk/modules/muse-wsrf/specs/WS-ResourceProperties-1_2.xsd
    webservices/muse/trunk/modules/muse-wsrf/specs/WS-ServiceGroup-1_2.wsdl
    webservices/muse/trunk/modules/muse-wsrf/specs/WS-ServiceGroupEntry-1_2.wsdl
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/WsResource.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/WsResourceCapability.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/WsResourceCapabilityProperties.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/WsrfConstants.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/basefaults/BaseFault.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/basefaults/WsbfConstants.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/basefaults/WsbfUtils.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/ext/WsrfExtConstants.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/ext/faults/InvalidMessageFormatFault.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/ext/faults/ResourceInitializationFault.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/ext/faults/SerializationErrorFault.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/faults/ResourceUnavailableFault.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/faults/ResourceUnknownFault.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/impl/AbstractWsResourceCapability.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/impl/Messages.properties
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/impl/SimpleWsResource.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/lifetime/ImmediateTermination.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/lifetime/ScheduledTermination.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/lifetime/WsrlConstants.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/lifetime/faults/ResourceNotDestroyedFault.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/lifetime/faults/TerminationTimeChangeRejectedFault.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/lifetime/faults/UnableToSetTerminationTimeFault.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/lifetime/impl/Messages.properties
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/lifetime/impl/SetTerminationTime.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/lifetime/impl/SetTerminationTimeHandler.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/lifetime/impl/SetTerminationTimeResponse.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/lifetime/impl/SimpleImmediateTermination.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/lifetime/impl/SimpleScheduledTermination.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/metadata/MetadataDescriptor.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/metadata/OpenMetadataDescriptor.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/metadata/ResourcePropertiesMetadataValidation.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/metadata/RmdFileFilter.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/metadata/WsrmdConstants.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/metadata/impl/InsertOnlyApprover.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/metadata/impl/Messages.properties
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/metadata/impl/PropertyMetadata.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/metadata/impl/ReadOnlyApprover.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/metadata/impl/SimpleMetadataDescriptor.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/metadata/impl/StaticValuesApprover.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/ResourcePropertyCollection.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/WsrpConstants.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/get/GetCapability.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/get/GetMultipleResourceProperties.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/get/GetResourceProperty.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/get/GetResourcePropertyDocument.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/get/ext/GetResourcePropertyExtensions.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/get/faults/InvalidResourcePropertyQNameFault.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/get/impl/GetHandler.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/get/impl/GetMultipleHandler.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/get/impl/GetMultipleRequest.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/get/impl/GetMultipleResponse.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/get/impl/GetRequest.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/get/impl/GetResponse.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/get/impl/Messages.properties
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/get/impl/SimpleGetCapability.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/impl/Messages.properties
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/impl/SimpleResourcePropertyCollection.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/impl/WsrpUtils.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/listeners/AbstractChangeApprover.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/listeners/PropertyChangeApprover.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/listeners/PropertyChangeListener.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/listeners/PropertyReadListener.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/listeners/ResourcePropertyListeners.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/query/QueryCapability.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/query/QueryExpression.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/query/QueryExpressionFactory.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/query/QueryResourceProperties.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/query/faults/InvalidQueryExpressionFault.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/query/faults/QueryEvaluationErrorFault.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/query/faults/UnknownQueryExpressionDialectFault.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/query/impl/Messages.properties
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/query/impl/QueryRequest.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/query/impl/QueryResponse.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/query/impl/SimpleQueryCapability.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/query/impl/XPathQueryExpression.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/query/impl/XPathQueryExpressionFactory.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/schema/OpenPropertiesSchema.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/schema/ResourcePropertiesSchema.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/schema/ResourcePropertiesSchemaValidation.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/schema/faults/SchemaValidationErrorFault.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/schema/impl/Messages.properties
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/schema/impl/PropertySchemaDefinition.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/set/PutResourcePropertyDocument.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/set/SetCapability.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/set/SetOperationFactory.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/set/SetRequestComponent.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/set/SetResourceProperties.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/set/SetResourcePropertiesComponents.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/set/SetResourcePropertiesPermissions.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/set/ext/SetResourcePropertiesExtensions.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/set/faults/InvalidModificationFault.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/set/faults/SetResourcePropertyRequestFailedFault.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/set/faults/UnableToModifyResourcePropertyFault.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/set/impl/AbstractSetRequestComponent.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/set/impl/InsertRequest.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/set/impl/Messages.properties
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/set/impl/SetHandler.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/set/impl/SetResponse.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/set/impl/SimpleSetCapability.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/set/impl/SimpleSetOperationFactory.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/set/impl/SimpleSetRequest.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/properties/set/impl/UpdateRequest.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/remote/Messages.properties
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/remote/WsResourceClient.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/sg/Entry.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/sg/MembershipContentRule.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/sg/ServiceGroup.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/sg/ServiceGroupRegistration.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/sg/WssgConstants.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/sg/faults/AddRefusedFault.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/sg/faults/ContentCreationFailedFault.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/sg/faults/UnsupportedMemberInterfaceFault.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/sg/impl/AddHandler.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/sg/impl/AddRequest.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/sg/impl/AddResponse.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/sg/impl/Messages.properties
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/sg/impl/SimpleEntry.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/sg/impl/SimpleMembershipContentRule.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/sg/impl/SimpleServiceGroup.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/sg/impl/SimpleServiceGroupRegistration.java
    webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/sg/remote/ServiceGroupClient.java

Added: webservices/muse/trunk/modules/muse-wsrf/specs/WS-ResourceLifetime-1_2.xsd
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-wsrf/specs/WS-ResourceLifetime-1_2.xsd?rev=413698&view=auto
==============================================================================
--- webservices/muse/trunk/modules/muse-wsrf/specs/WS-ResourceLifetime-1_2.xsd (added)
+++ webservices/muse/trunk/modules/muse-wsrf/specs/WS-ResourceLifetime-1_2.xsd Mon Jun 12 09:12:15 2006
@@ -0,0 +1,130 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+	
+	OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification, can be obtained from the OASIS Executive Director.
+	
+	OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.
+	
+	Copyright (C) OASIS Open (2005). All Rights Reserved.
+	
+	This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate it into languages other than English. 
+	
+	The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns. 
+	
+	This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+	
+-->
+
+
+<xsd:schema 
+xmlns="http://www.w3.org/2001/XMLSchema" 
+xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
+xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
+xmlns:wsrf-rl="http://docs.oasis-open.org/wsrf/rl-2" 
+xmlns:wsrf-bf="http://docs.oasis-open.org/wsrf/bf-2" 
+elementFormDefault="qualified" attributeFormDefault="unqualified" 
+targetNamespace="http://docs.oasis-open.org/wsrf/rl-2">
+
+	<xsd:import namespace="http://docs.oasis-open.org/wsrf/bf-2" 
+	schemaLocation="WS-BaseFaults-1_2.xsd" />
+	<!-- 
+		=============== Resource Property Related  =================== 
+	-->
+	<!-- 
+		==== Resource Properties for ScheduledResourceTermination ==== 
+	-->
+
+	<xsd:element name="CurrentTime" >
+		<xsd:complexType>
+			<xsd:simpleContent>
+				<xsd:extension base="xsd:dateTime" >
+					<xsd:anyAttribute namespace="##other" processContents="lax"/>
+				</xsd:extension>
+			</xsd:simpleContent>
+		</xsd:complexType>
+	</xsd:element>
+	
+	<xsd:element name="TerminationTime" nillable="true">
+	<xsd:complexType>
+			<xsd:simpleContent>
+				<xsd:extension base="xsd:dateTime" >
+					<xsd:anyAttribute namespace="##other" processContents="lax"/>
+				</xsd:extension>
+			</xsd:simpleContent>
+		</xsd:complexType>
+	</xsd:element>
+
+
+	<!-- ==== Resource Properties for ScheduledResourceTermination ==== -->
+	<xsd:element name="ScheduledResourceTerminationRP">
+		<xsd:complexType>
+			<xsd:sequence>
+				<xsd:element maxOccurs="1" minOccurs="1" ref="wsrf-rl:CurrentTime" />
+				<xsd:element maxOccurs="1" minOccurs="1" ref="wsrf-rl:TerminationTime" />
+			</xsd:sequence>
+		</xsd:complexType>
+	</xsd:element>
+
+	<!-- ====== Message Types for ImmediateResourceTermination  ======= -->
+	<xsd:element name="Destroy">
+		<xsd:complexType />
+	</xsd:element>
+
+	<xsd:element name="DestroyResponse">
+		<xsd:complexType />
+	</xsd:element>
+
+	<xsd:complexType name="ResourceNotDestroyedFaultType">
+		<xsd:complexContent>
+			<xsd:extension base="wsrf-bf:BaseFaultType" />
+		</xsd:complexContent>
+	</xsd:complexType>
+	<xsd:element name="ResourceNotDestroyedFault" type="wsrf-rl:ResourceNotDestroyedFaultType" />
+	<!-- ====== Message Types for ScheduledResourceTermination  ======= -->
+	<xsd:element name="SetTerminationTime">
+		<xsd:complexType>
+			<xsd:choice>
+				<xsd:element name="RequestedTerminationTime" nillable="true" type="xsd:dateTime" />
+				<xsd:element name="RequestedLifetimeDuration" type="xsd:duration" />
+			</xsd:choice>
+		</xsd:complexType>
+	</xsd:element>
+		
+	<xsd:element name="SetTerminationTimeResponse">
+		<xsd:complexType>
+			<xsd:sequence>
+				<xsd:element name="NewTerminationTime" nillable="true" type="xsd:dateTime" />
+				<xsd:element name="CurrentTime" type="xsd:dateTime" />
+			</xsd:sequence>
+		</xsd:complexType>
+	</xsd:element>
+	<xsd:complexType name="UnableToSetTerminationTimeFaultType">
+		<xsd:complexContent>
+			<xsd:extension base="wsrf-bf:BaseFaultType" />
+		</xsd:complexContent>
+	</xsd:complexType>
+
+	<xsd:element name="UnableToSetTerminationTimeFault" type="wsrf-rl:UnableToSetTerminationTimeFaultType" />
+	<xsd:complexType name="TerminationTimeChangeRejectedFaultType">
+		<xsd:complexContent>
+			<xsd:extension base="wsrf-bf:BaseFaultType" />
+		</xsd:complexContent>
+	</xsd:complexType>
+	<xsd:element name="TerminationTimeChangeRejectedFault" type="wsrf-rl:TerminationTimeChangeRejectedFaultType" />
+
+
+	<!-- 
+		============= Notification Message Related  ================== 
+	-->
+	<xsd:element name="TerminationNotification">
+		<xsd:complexType>
+			<xsd:sequence>
+				<xsd:element name="TerminationTime" type="xsd:dateTime" minOccurs="1" maxOccurs="1" nillable="true" />
+				<xsd:element name="TerminationReason" type="xsd:anyType" minOccurs="0" maxOccurs="1" />
+			</xsd:sequence>
+
+		</xsd:complexType>
+	</xsd:element>
+
+
+</xsd:schema>
\ No newline at end of file

Added: webservices/muse/trunk/modules/muse-wsrf/specs/WS-ResourceProperties-1_2.xsd
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-wsrf/specs/WS-ResourceProperties-1_2.xsd?rev=413698&view=auto
==============================================================================
--- webservices/muse/trunk/modules/muse-wsrf/specs/WS-ResourceProperties-1_2.xsd (added)
+++ webservices/muse/trunk/modules/muse-wsrf/specs/WS-ResourceProperties-1_2.xsd Mon Jun 12 09:12:15 2006
@@ -0,0 +1,394 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+
+OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification, can be obtained from the OASIS Executive Director.
+
+OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.
+
+Copyright (C) OASIS Open (2005). All Rights Reserved.
+
+This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate it into languages other than English. 
+
+The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns. 
+
+This document and the information contained herein is provided on an "AS IS" basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+
+-->
+<xsd:schema 
+  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+  xmlns:wsrf-rp="http://docs.oasis-open.org/wsrf/rp-2"
+  xmlns:wsrf-bf="http://docs.oasis-open.org/wsrf/bf-2"
+  elementFormDefault="qualified" attributeFormDefault="unqualified" 
+  targetNamespace="http://docs.oasis-open.org/wsrf/rp-2" 
+>
+  <xsd:import 
+       namespace="http://docs.oasis-open.org/wsrf/bf-2"
+       schemaLocation="WS-BaseFaults-1_2.xsd"
+   /> 
+<!-- =============== Resource Property Related  =================== --> 
+<!-- ====== Resource Properties for QueryResourceProperties ======= -->
+   <xsd:element name="QueryExpressionDialect" type="xsd:anyURI"/>
+   
+   <xsd:element name="QueryExpressionRPDocument">
+      <xsd:complexType>
+         <xsd:sequence>
+            <xsd:element ref="wsrf-rp:QueryExpressionDialect"
+                         minOccurs="0" maxOccurs="unbounded" />
+         </xsd:sequence>
+      </xsd:complexType>
+   </xsd:element>
+
+<!-- ======= Global Attribute Declaration for WSDL 1.1 portType==== --> 
+  <xsd:attribute name="ResourceProperties" type="xsd:QName" />
+
+<!-- = Notification Message for ResourceProperties value change === -->
+  <xsd:complexType name="ResourcePropertyValueChangeNotificationType">
+    <xsd:sequence>
+      <xsd:element name="OldValues" nillable="true"
+                   minOccurs="0" maxOccurs="1" >
+        <xsd:complexType>
+          <xsd:sequence>
+            <xsd:any minOccurs="1" maxOccurs="unbounded" />
+          </xsd:sequence>
+        </xsd:complexType>
+      </xsd:element>
+      <xsd:element name="NewValues" nillable="true"
+                   minOccurs="1" maxOccurs="1" >
+        <xsd:complexType>
+          <xsd:sequence>
+            <xsd:any minOccurs="1" maxOccurs="unbounded" />
+          </xsd:sequence>
+        </xsd:complexType>
+      </xsd:element>      
+    </xsd:sequence>
+  </xsd:complexType>
+  
+  <xsd:element name="ResourcePropertyValueChangeNotification" 
+        type="wsrf-rp:ResourcePropertyValueChangeNotificationType" />
+
+  <xsd:complexType name="QueryExpressionType" mixed="true">
+    <xsd:sequence>
+      <xsd:any minOccurs="0" maxOccurs="1" processContents="lax" />
+    </xsd:sequence>
+    <xsd:attribute name="Dialect" type="xsd:anyURI" />
+  </xsd:complexType>
+
+  <xsd:element name="QueryExpression" type="wsrf-rp:QueryExpressionType" />
+
+<!-- ======= Message Types for GetResourcePropertyDocument  ======= -->
+
+  <xsd:element name="GetResourcePropertyDocument">
+    <xsd:complexType/>
+  </xsd:element>
+
+  <xsd:element name="GetResourcePropertyDocumentResponse">
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:any minOccurs="1" maxOccurs="1"/>
+      </xsd:sequence>
+    </xsd:complexType>
+  </xsd:element>
+
+<!-- ========== Message Types for GetResourceProperty  ============ -->
+       
+  <xsd:element name="GetResourceProperty" 
+               type="xsd:QName" />
+
+  <xsd:element name="GetResourcePropertyResponse" >
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:any  minOccurs="0" maxOccurs="unbounded" />
+      </xsd:sequence>
+    </xsd:complexType>
+  </xsd:element>
+
+  <xsd:complexType name="InvalidResourcePropertyQNameFaultType">
+    <xsd:complexContent>
+      <xsd:extension base="wsrf-bf:BaseFaultType"/>
+    </xsd:complexContent>
+  </xsd:complexType>
+  <xsd:element name="InvalidResourcePropertyQNameFault" 
+               type="wsrf-rp:InvalidResourcePropertyQNameFaultType"/>
+
+<!-- ====== Message Types for GetMultipleResourceProperties ======= -->       
+  <xsd:element name="GetMultipleResourceProperties">
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:element name="ResourceProperty" type="xsd:QName" 
+                     minOccurs="1" maxOccurs="unbounded" />
+      </xsd:sequence>
+    </xsd:complexType>
+  </xsd:element>
+ 
+  <xsd:element name="GetMultipleResourcePropertiesResponse">
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:any  minOccurs="0" maxOccurs="unbounded" />
+      </xsd:sequence>
+    </xsd:complexType>
+  </xsd:element>
+
+<!-- ========== Message Types for PutResourceProperty  ============ -->
+
+  <xsd:element name="PutResourcePropertyDocument">
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:any minOccurs="1" maxOccurs="1"/>
+      </xsd:sequence>
+    </xsd:complexType>
+  </xsd:element>
+
+  <xsd:element name="PutResourcePropertyDocumentResponse">
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:any minOccurs="0" maxOccurs="1"/>
+      </xsd:sequence>
+    </xsd:complexType>
+  </xsd:element>
+
+  <xsd:complexType name="ResourcePropertyChangeFailureType">
+         <xsd:sequence>
+         <xsd:element name="CurrentValue" minOccurs="0" maxOccurs="1">
+           <xsd:complexType>
+             <xsd:sequence>
+               <xsd:any minOccurs="1" maxOccurs="unbounded" />
+             </xsd:sequence>
+           </xsd:complexType>
+         </xsd:element>
+         <xsd:element name="RequestedValue" minOccurs="0" maxOccurs="1">
+           <xsd:complexType>
+             <xsd:sequence>
+               <xsd:any minOccurs="1" maxOccurs="unbounded" />
+             </xsd:sequence>
+           </xsd:complexType>
+         </xsd:element>
+     </xsd:sequence>
+     <xsd:attribute name="Restored" type="xsd:boolean"/>
+  </xsd:complexType>
+
+  <xsd:complexType 
+      name="UnableToPutResourcePropertyDocumentFaultType">
+    <xsd:complexContent>
+      <xsd:extension base="wsrf-bf:BaseFaultType">
+        <xsd:sequence>
+          <xsd:element name="ResourcePropertyChangeFailure" type=
+                                                      "wsrf-rp:ResourcePropertyChangeFailureType"/>
+        </xsd:sequence>
+      </xsd:extension>
+    </xsd:complexContent>
+  </xsd:complexType>
+  <xsd:element name="UnableToPutResourcePropertyDocumentFault" 
+               type=
+      "wsrf-rp:UnableToPutResourcePropertyDocumentFaultType"/>
+
+<!-- ========= Message Types for SetResourceProperties =========== -->
+                   
+  <xsd:complexType name="InsertType">
+    <xsd:sequence>
+      <xsd:any processContents="lax"
+               minOccurs="1" maxOccurs="unbounded" />
+    </xsd:sequence>
+  </xsd:complexType>
+  <xsd:element name="Insert" type="wsrf-rp:InsertType"/>
+         
+  <xsd:complexType name="UpdateType">
+    <xsd:sequence>
+      <xsd:any processContents="lax"
+               minOccurs="1" maxOccurs="unbounded" />
+    </xsd:sequence>
+  </xsd:complexType>
+  <xsd:element name="Update" type="wsrf-rp:UpdateType"/>
+         
+  <xsd:complexType name="DeleteType">
+    <xsd:attribute name="ResourceProperty" 
+                   type="xsd:QName" use="required" />
+  </xsd:complexType>
+  <xsd:element name="Delete" type="wsrf-rp:DeleteType"/>
+        
+  <xsd:element name="SetResourceProperties">
+    <xsd:complexType>
+      <xsd:choice minOccurs="1" maxOccurs="unbounded">
+        <xsd:element ref="wsrf-rp:Insert"/>
+        <xsd:element ref="wsrf-rp:Update"/>
+        <xsd:element ref="wsrf-rp:Delete"/>
+      </xsd:choice>
+    </xsd:complexType>
+  </xsd:element>
+
+  <xsd:element name="SetResourcePropertiesResponse" >
+    <xsd:complexType />
+  </xsd:element>
+
+  <xsd:complexType
+          name="InvalidModificationFaultType">
+    <xsd:complexContent>
+      <xsd:extension base="wsrf-bf:BaseFaultType">
+        <xsd:sequence>
+          <xsd:element name="ResourcePropertyChangeFailure" type=
+                                                      "wsrf-rp:ResourcePropertyChangeFailureType"/>
+        </xsd:sequence>
+      </xsd:extension>
+    </xsd:complexContent>
+  </xsd:complexType>
+  <xsd:element name=
+      "InvalidModificationFault" 
+               type=
+      "wsrf-rp:InvalidModificationFaultType"/>
+
+  <xsd:complexType name="UnableToModifyResourcePropertyFaultType">
+    <xsd:complexContent>
+      <xsd:extension base="wsrf-bf:BaseFaultType">
+        <xsd:sequence>
+          <xsd:element name="ResourcePropertyChangeFailure" type=
+                                                      "wsrf-rp:ResourcePropertyChangeFailureType"/>
+        </xsd:sequence>
+      </xsd:extension>
+    </xsd:complexContent>
+  </xsd:complexType>
+  <xsd:element name="UnableToModifyResourcePropertyFault" 
+               type="wsrf-rp:UnableToModifyResourcePropertyFaultType"/>
+
+  <xsd:complexType name="SetResourcePropertyRequestFailedFaultType">
+    <xsd:complexContent>
+      <xsd:extension base="wsrf-bf:BaseFaultType">
+        <xsd:sequence>
+          <xsd:element name="ResourcePropertyChangeFailure" type=
+                                                      "wsrf-rp:ResourcePropertyChangeFailureType"/>
+        </xsd:sequence>
+      </xsd:extension>
+    </xsd:complexContent>
+  </xsd:complexType>
+  <xsd:element name="SetResourcePropertyRequestFailedFault" 
+               type=
+          "wsrf-rp:SetResourcePropertyRequestFailedFaultType"/>
+
+  <xsd:complexType name="InsertResourcePropertiesRequestFailedFaultType">
+    <xsd:complexContent>
+      <xsd:extension base="wsrf-bf:BaseFaultType">
+        <xsd:sequence>
+          <xsd:element name="ResourcePropertyChangeFailure" type=
+                                                      "wsrf-rp:ResourcePropertyChangeFailureType"/>
+        </xsd:sequence>
+      </xsd:extension>
+    </xsd:complexContent>
+  </xsd:complexType>
+  <xsd:element name="InsertResourcePropertiesRequestFailedFault" 
+               type=
+          "wsrf-rp:InsertResourcePropertiesRequestFailedFaultType"/>
+
+  <xsd:complexType name="UpdateResourcePropertiesRequestFailedFaultType">
+    <xsd:complexContent>
+      <xsd:extension base="wsrf-bf:BaseFaultType">
+        <xsd:sequence>
+          <xsd:element name="ResourcePropertyChangeFailure" type=
+                                                      "wsrf-rp:ResourcePropertyChangeFailureType"/>
+        </xsd:sequence>
+      </xsd:extension>
+    </xsd:complexContent>
+  </xsd:complexType>
+  <xsd:element 
+     name="UpdateResourcePropertiesRequestFailedFault" 
+     type="wsrf-rp:UpdateResourcePropertiesRequestFailedFaultType"/>
+
+  <xsd:complexType name="DeleteResourcePropertiesRequestFailedFaultType">
+    <xsd:complexContent>
+      <xsd:extension base="wsrf-bf:BaseFaultType">
+        <xsd:sequence>
+          <xsd:element name="ResourcePropertyChangeFailure" type=
+                                                      "wsrf-rp:ResourcePropertyChangeFailureType"/>
+        </xsd:sequence>
+      </xsd:extension>
+    </xsd:complexContent>
+  </xsd:complexType>
+  <xsd:element 
+     name="DeleteResourcePropertiesRequestFailedFault" 
+     type="wsrf-rp:DeleteResourcePropertiesRequestFailedFaultType"/>
+
+<!-- ======== Message Types for InsertResourceProperties ========== -->
+  <xsd:element name="InsertResourceProperties">
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:element ref="wsrf-rp:Insert"/> 
+      </xsd:sequence>
+    </xsd:complexType>
+  </xsd:element>
+
+  <xsd:element name="InsertResourcePropertiesResponse" >
+    <xsd:complexType />
+  </xsd:element>
+      
+<!-- ======== Message Types for UpdateResourceProperties ========== -->
+  <xsd:element name="UpdateResourceProperties">
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:element ref="wsrf-rp:Update"/> 
+      </xsd:sequence>
+    </xsd:complexType>
+  </xsd:element>
+
+  <xsd:element name="UpdateResourcePropertiesResponse" >
+    <xsd:complexType />
+  </xsd:element>
+
+<!-- ======== Message Types for DeleteResourceProperties ========== -->
+  <xsd:element name="DeleteResourceProperties">
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:element ref="wsrf-rp:Delete"/> 
+      </xsd:sequence>
+    </xsd:complexType>
+  </xsd:element>
+
+  <xsd:element name="DeleteResourcePropertiesResponse" >
+    <xsd:complexType />
+  </xsd:element>
+
+<!-- ========= Message Types for QueryResourceProperties ========== -->         
+       
+  <xsd:element name="QueryResourceProperties" >
+    <xsd:complexType>
+      <xsd:sequence>
+        <xsd:element ref="wsrf-rp:QueryExpression" 
+                     minOccurs="1" maxOccurs="1"/>
+      </xsd:sequence>
+    </xsd:complexType>
+  </xsd:element>
+ 
+  <xsd:element name="QueryResourcePropertiesResponse" >
+    <xsd:complexType>
+      <xsd:complexContent mixed="true">
+        <xsd:restriction base="xsd:anyType">
+          <xsd:sequence>
+            <xsd:any processContents="lax" 
+                     minOccurs="1" maxOccurs="unbounded"/>
+          </xsd:sequence>
+        </xsd:restriction>
+      </xsd:complexContent>
+    </xsd:complexType>
+  </xsd:element>        
+
+  <xsd:complexType name="UnknownQueryExpressionDialectFaultType">
+    <xsd:complexContent>
+      <xsd:extension base="wsrf-bf:BaseFaultType"/>
+    </xsd:complexContent>
+  </xsd:complexType>
+  <xsd:element name="UnknownQueryExpressionDialectFault" 
+               type="wsrf-rp:UnknownQueryExpressionDialectFaultType"/>
+
+  <xsd:complexType name="InvalidQueryExpressionFaultType">
+    <xsd:complexContent>
+      <xsd:extension base="wsrf-bf:BaseFaultType"/>
+    </xsd:complexContent>
+  </xsd:complexType>
+  <xsd:element name="InvalidQueryExpressionFault" 
+               type="wsrf-rp:InvalidQueryExpressionFaultType"/>
+
+  <xsd:complexType name="QueryEvaluationErrorFaultType">
+    <xsd:complexContent>
+      <xsd:extension base="wsrf-bf:BaseFaultType"/>
+    </xsd:complexContent>
+  </xsd:complexType>
+  <xsd:element name="QueryEvaluationErrorFault" 
+               type="wsrf-rp:QueryEvaluationErrorFaultType"/>
+
+</xsd:schema>
\ No newline at end of file

Added: webservices/muse/trunk/modules/muse-wsrf/specs/WS-ServiceGroup-1_2.wsdl
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-wsrf/specs/WS-ServiceGroup-1_2.wsdl?rev=413698&view=auto
==============================================================================
--- webservices/muse/trunk/modules/muse-wsrf/specs/WS-ServiceGroup-1_2.wsdl (added)
+++ webservices/muse/trunk/modules/muse-wsrf/specs/WS-ServiceGroup-1_2.wsdl Mon Jun 12 09:12:15 2006
@@ -0,0 +1,259 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions 
+	targetNamespace="http://docs.oasis-open.org/wsrf/sgw-2" 
+	xmlns:tns="http://docs.oasis-open.org/wsrf/sgw-2" 
+    xmlns:wsrf-sg="http://docs.oasis-open.org/wsrf/sg-2" 
+    xmlns:wsrf-sgw="http://docs.oasis-open.org/wsrf/sgw-2" 
+	xmlns="http://schemas.xmlsoap.org/wsdl/"
+	xmlns:wsa="http://www.w3.org/ws/2005/08/addressing"
+	xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+	xmlns:wsdl-soap="http://schemas.xmlsoap.org/wsdl/soap/"
+	xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+	xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex" 
+	xmlns:wsrf-r="http://docs.oasis-open.org/wsrf/r-2" 
+	xmlns:wsrf-rl="http://docs.oasis-open.org/wsrf/rl-2" 
+	xmlns:wsrf-bf="http://docs.oasis-open.org/wsrf/bf-2" 
+	xmlns:wsrf-rp="http://docs.oasis-open.org/wsrf/rp-2"
+	name="ServiceGroup">
+	<wsdl:types>
+		<xsd:schema 
+			elementFormDefault="qualified"
+			targetNamespace="http://schemas.xmlsoap.org/ws/2004/09/mex">
+			<xsd:include schemaLocation="WS-MetadataExchange-2004_09.xsd"/>
+		</xsd:schema>
+		<xsd:schema 
+			elementFormDefault="qualified" 
+			targetNamespace="http://docs.oasis-open.org/wsrf/rp-2">
+			<xsd:include schemaLocation="WS-ResourceProperties-1_2.xsd" />
+		</xsd:schema>
+		<xsd:schema 
+        	elementFormDefault="qualified" 
+			targetNamespace="http://docs.oasis-open.org/wsrf/r-2">
+			<xsd:include schemaLocation="WS-Resource-1_2.xsd" />
+		</xsd:schema>
+		<xsd:schema 
+        	elementFormDefault="qualified" 
+			targetNamespace="http://docs.oasis-open.org/wsrf/sg-2">
+			<xsd:include schemaLocation="WS-ServiceGroup-1_2.xsd" />
+		</xsd:schema>
+	</wsdl:types>
+	<wsdl:message name="GetMetadataMsg">
+  		<wsdl:part name="GetMetadataMsg" element="wsx:GetMetadata" />
+	</wsdl:message>
+	<wsdl:message name="GetMetadataResponseMsg">
+  		<wsdl:part name="GetMetadataResponseMsg" element="wsx:Metadata" />
+	</wsdl:message>
+	<wsdl:message name="ResourceUnknownFault">
+		<wsdl:part name="ResourceUnknownFault" element="wsrf-r:ResourceUnknownFault" />
+	</wsdl:message> 
+	<wsdl:message name="ResourceUnavailableFault">
+		<wsdl:part name="ResourceUnavailableFault" element="wsrf-r:ResourceUnavailableFault" />
+	</wsdl:message>
+	<wsdl:message name="GetResourcePropertyDocumentRequest">
+		<wsdl:part name="GetResourcePropertyDocumentRequest" element="wsrf-rp:GetResourcePropertyDocument"/>
+	</wsdl:message>
+	<wsdl:message name="GetResourcePropertyDocumentResponse">
+		<wsdl:part name="GetResourcePropertyDocumentResponse" element="wsrf-rp:GetResourcePropertyDocumentResponse"/>
+	</wsdl:message>
+	<wsdl:message name="GetResourcePropertyRequest">
+		<wsdl:part name="GetResourcePropertyRequest" element="wsrf-rp:GetResourceProperty" />
+	</wsdl:message>
+	<wsdl:message name="GetResourcePropertyResponse">
+		<wsdl:part name="GetResourcePropertyResponse" element="wsrf-rp:GetResourcePropertyResponse" />
+	</wsdl:message>
+	<wsdl:message name="InvalidResourcePropertyQNameFault">
+		<wsdl:part name="InvalidResourcePropertyQNameFault" element="wsrf-rp:InvalidResourcePropertyQNameFault" />
+	</wsdl:message>
+	<wsdl:message name="GetMultipleResourcePropertiesRequest">
+    	<wsdl:part name="GetMultipleResourcePropertiesRequest" element="wsrf-rp:GetMultipleResourceProperties" />
+    </wsdl:message>
+    <wsdl:message name="GetMultipleResourcePropertiesResponse">
+    	<wsdl:part name="GetMultipleResourcePropertiesResponse" element="wsrf-rp:GetMultipleResourcePropertiesResponse" />
+    </wsdl:message>
+    <wsdl:message name="QueryResourcePropertiesRequest">
+    	<wsdl:part name="QueryResourcePropertiesRequest" element="wsrf-rp:QueryResourceProperties" />
+    </wsdl:message>
+    <wsdl:message name="QueryResourcePropertiesResponse">
+    	<wsdl:part name="QueryResourcePropertiesResponse" element="wsrf-rp:QueryResourcePropertiesResponse" />
+    </wsdl:message>
+    <wsdl:message name="UnknownQueryExpressionDialectFault">
+    	<wsdl:part name="UnknownQueryExpressionDialectFault" element="wsrf-rp:UnknownQueryExpressionDialectFault" />
+    </wsdl:message>
+    <wsdl:message name="InvalidQueryExpressionFault">
+    	<wsdl:part name="InvalidQueryExpressionFault" element="wsrf-rp:InvalidQueryExpressionFault" />
+    </wsdl:message>
+    <wsdl:message name="QueryEvaluationErrorFault">
+    	<wsdl:part name="QueryEvaluationErrorFault" element="wsrf-rp:QueryEvaluationErrorFault" />
+    </wsdl:message>
+	<wsdl:portType 
+		name="ServiceGroupPortType" 
+	    wsrf-rp:ResourceProperties="wsrf-sg:ServiceGroupRP">
+		<wsdl:operation name="GetMetadata">
+			<wsdl:input name="GetMetadataMsg" message="tns:GetMetadataMsg"/>
+			<wsdl:output name="GetMetadataResponseMsg" message="tns:GetMetadataResponseMsg"/>
+		</wsdl:operation>
+		<wsdl:operation name="GetResourcePropertyDocument">
+			<wsdl:input name="GetResourcePropertyDocumentRequest" message="tns:GetResourcePropertyDocumentRequest"/>
+			<wsdl:output name="GetResourcePropertyDocumentResponse" message="tns:GetResourcePropertyDocumentResponse"/>
+			<wsdl:fault name="ResourceUnknownFault" message="tns:ResourceUnknownFault"/>
+			<wsdl:fault name="ResourceUnavailableFault" message="tns:ResourceUnavailableFault"/>
+		</wsdl:operation>
+		<wsdl:operation name="GetResourceProperty">
+			<wsdl:input name="GetResourcePropertyRequest" message="tns:GetResourcePropertyRequest" />
+			<wsdl:output name="GetResourcePropertyResponse" message="tns:GetResourcePropertyResponse" />
+			<wsdl:fault name="ResourceUnknownFault" message="tns:ResourceUnknownFault"/>
+			<wsdl:fault name="ResourceUnavailableFault" message="tns:ResourceUnavailableFault"/>
+			<wsdl:fault name="InvalidResourcePropertyQNameFault" message="tns:InvalidResourcePropertyQNameFault" />
+		</wsdl:operation>
+		<wsdl:operation name="GetMultipleResourceProperties">
+			<wsdl:input name="GetMultipleResourcePropertiesRequest" message="tns:GetMultipleResourcePropertiesRequest" />
+			<wsdl:output name="GetMultipleResourcePropertiesResponse" message="tns:GetMultipleResourcePropertiesResponse" />
+			<wsdl:fault name="ResourceUnknownFault" message="tns:ResourceUnknownFault"/>
+			<wsdl:fault name="ResourceUnavailableFault" message="tns:ResourceUnavailableFault"/>
+			<wsdl:fault name="InvalidResourcePropertyQNameFault" message="tns:InvalidResourcePropertyQNameFault" />
+    	</wsdl:operation>
+		<wsdl:operation name="QueryResourceProperties">
+			<wsdl:input name="QueryResourcePropertiesRequest" message="tns:QueryResourcePropertiesRequest" />
+			<wsdl:output name="QueryResourcePropertiesResponse" message="tns:QueryResourcePropertiesResponse" />
+			<wsdl:fault name="ResourceUnknownFault" message="tns:ResourceUnknownFault"/>
+			<wsdl:fault name="ResourceUnavailableFault" message="tns:ResourceUnavailableFault"/>
+			<wsdl:fault name="UnknownQueryExpressionDialectFault" message="tns:UnknownQueryExpressionDialectFault"/>
+			<wsdl:fault name="InvalidQueryExpressionFault" message="tns:InvalidQueryExpressionFault"/>
+			<wsdl:fault name="QueryEvaluationErrorFault" message="tns:QueryEvaluationErrorFault" />
+    	</wsdl:operation>
+	</wsdl:portType>
+	<wsdl:binding name="ServiceGroupBinding" type="tns:ServiceGroupPortType">
+		<wsdl-soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
+		<wsdl:operation name="GetMetadata">
+			<wsdl-soap:operation soapAction="GetMetadata" />
+			<wsdl:input>
+				<wsdl-soap:body 
+					use="encoded"
+					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
+			</wsdl:input>
+			<wsdl:output>
+				<wsdl-soap:body 
+					use="encoded"
+					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
+			</wsdl:output>
+		</wsdl:operation>
+        <wsdl:operation name="GetResourcePropertyDocument">
+        	<wsdl-soap:operation soapAction="GetResourcePropertyDocument"/>
+        	<wsdl:input name="GetResourcePropertyDocumentRequest">
+        		<wsdl-soap:body 
+        			use="encoded"
+					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+        	</wsdl:input><wsdl:output name="GetResourcePropertyDocumentResponse">
+        		<wsdl-soap:body 
+        			use="encoded" 
+					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+        	</wsdl:output>
+        	<wsdl:fault name="ResourceUnknownFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="ResourceUnknownFault"/>
+        	</wsdl:fault>
+        	<wsdl:fault name="ResourceUnavailableFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="ResourceUnavailableFault"/>
+        	</wsdl:fault>
+        </wsdl:operation>
+        <wsdl:operation name="GetResourceProperty">
+        	<wsdl-soap:operation soapAction="GetResourceProperty"/>
+        	<wsdl:input name="GetResourcePropertyRequest">
+        		<wsdl-soap:body 
+        			use="encoded"
+					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+        	</wsdl:input><wsdl:output name="GetResourcePropertyResponse">
+        		<wsdl-soap:body 
+        			use="encoded" 
+					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+        	</wsdl:output>
+        	<wsdl:fault name="ResourceUnknownFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="ResourceUnknownFault"/>
+        	</wsdl:fault>
+        	<wsdl:fault name="ResourceUnavailableFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="ResourceUnavailableFault"/>
+        	</wsdl:fault>
+        	<wsdl:fault name="InvalidResourcePropertyQNameFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="InvalidResourcePropertyQNameFault"/>
+        	</wsdl:fault>
+        </wsdl:operation>
+        <wsdl:operation name="GetMultipleResourceProperties">
+        	<wsdl-soap:operation soapAction="GetMultipleResourceProperties"/>
+        	<wsdl:input name="GetMultipleResourcePropertiesRequest">
+        		<wsdl-soap:body 
+        			use="encoded"
+					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+        	</wsdl:input><wsdl:output name="GetMultipleResourcePropertiesResponse">
+        		<wsdl-soap:body 
+        			use="encoded" 
+					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+        	</wsdl:output>
+        	<wsdl:fault name="ResourceUnknownFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="ResourceUnknownFault"/>
+        	</wsdl:fault>
+        	<wsdl:fault name="ResourceUnavailableFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="ResourceUnavailableFault"/>
+        	</wsdl:fault>
+        	<wsdl:fault name="InvalidResourcePropertyQNameFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="InvalidResourcePropertyQNameFault"/>
+        	</wsdl:fault>
+        </wsdl:operation>
+        <wsdl:operation name="QueryResourceProperties">
+        	<wsdl-soap:operation soapAction="QueryResourceProperties"/>
+        	<wsdl:input name="QueryResourcePropertiesRequest">
+        		<wsdl-soap:body 
+        			use="encoded"
+					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+        	</wsdl:input><wsdl:output name="QueryResourcePropertiesResponse">
+        		<wsdl-soap:body 
+        			use="encoded" 
+					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+        	</wsdl:output>
+        	<wsdl:fault name="ResourceUnknownFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="ResourceUnknownFault"/>
+        	</wsdl:fault>
+        	<wsdl:fault name="ResourceUnavailableFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="ResourceUnavailableFault"/>
+        	</wsdl:fault>
+        	<wsdl:fault name="UnknownQueryExpressionDialectFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="UnknownQueryExpressionDialectFault"/>
+        	</wsdl:fault>
+        	<wsdl:fault name="InvalidQueryExpressionFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="InvalidQueryExpressionFault"/>
+        	</wsdl:fault>
+        	<wsdl:fault name="QueryEvaluationErrorFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="QueryEvaluationErrorFault"/>
+        	</wsdl:fault>
+        </wsdl:operation>
+    </wsdl:binding>
+	<wsdl:service name="ServiceGroupService">
+    	<wsdl:port name="ServiceGroupPort" binding="tns:ServiceGroupBinding">
+    		<wsdl-soap:address location="http://localhost:8080/test-wsrf/services/ServiceGroup"/>
+    	</wsdl:port>
+	</wsdl:service>
+</wsdl:definitions>

Added: webservices/muse/trunk/modules/muse-wsrf/specs/WS-ServiceGroupEntry-1_2.wsdl
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-wsrf/specs/WS-ServiceGroupEntry-1_2.wsdl?rev=413698&view=auto
==============================================================================
--- webservices/muse/trunk/modules/muse-wsrf/specs/WS-ServiceGroupEntry-1_2.wsdl (added)
+++ webservices/muse/trunk/modules/muse-wsrf/specs/WS-ServiceGroupEntry-1_2.wsdl Mon Jun 12 09:12:15 2006
@@ -0,0 +1,198 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<wsdl:definitions 
+	targetNamespace="http://docs.oasis-open.org/wsrf/sgw-2" 
+	xmlns:tns="http://docs.oasis-open.org/wsrf/sgw-2" 
+    xmlns:wsrf-sg="http://docs.oasis-open.org/wsrf/sg-2" 
+    xmlns:wsrf-sgw="http://docs.oasis-open.org/wsrf/sgw-2" 
+	xmlns="http://schemas.xmlsoap.org/wsdl/"
+	xmlns:wsa="http://www.w3.org/ws/2005/08/addressing"
+	xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
+	xmlns:wsdl-soap="http://schemas.xmlsoap.org/wsdl/soap/"
+	xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+	xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex" 
+	xmlns:wsrf-r="http://docs.oasis-open.org/wsrf/r-2" 
+	xmlns:wsrf-rl="http://docs.oasis-open.org/wsrf/rl-2" 
+	xmlns:wsrf-bf="http://docs.oasis-open.org/wsrf/bf-2" 
+	xmlns:wsrf-rp="http://docs.oasis-open.org/wsrf/rp-2"
+	name="ServiceGroupEntry">
+	<wsdl:types>
+		<xsd:schema 
+			elementFormDefault="qualified"
+			targetNamespace="http://schemas.xmlsoap.org/ws/2004/09/mex">
+			<xsd:include schemaLocation="WS-MetadataExchange-2004_09.xsd"/>
+		</xsd:schema>
+		<xsd:schema 
+			elementFormDefault="qualified" 
+			targetNamespace="http://docs.oasis-open.org/wsrf/rp-2">
+			<xsd:include schemaLocation="WS-ResourceProperties-1_2.xsd" />
+		</xsd:schema>
+		<xsd:schema 
+        	elementFormDefault="qualified" 
+			targetNamespace="http://docs.oasis-open.org/wsrf/r-2">
+			<xsd:include schemaLocation="WS-Resource-1_2.xsd" />
+		</xsd:schema>
+		<xsd:schema 
+        	elementFormDefault="qualified" 
+			targetNamespace="http://docs.oasis-open.org/wsrf/sg-2">
+			<xsd:include schemaLocation="WS-ServiceGroup-1_2.xsd" />
+		</xsd:schema>
+	</wsdl:types>
+	<wsdl:message name="GetMetadataMsg">
+  		<wsdl:part name="GetMetadataMsg" element="wsx:GetMetadata" />
+	</wsdl:message>
+	<wsdl:message name="GetMetadataResponseMsg">
+  		<wsdl:part name="GetMetadataResponseMsg" element="wsx:Metadata" />
+	</wsdl:message>
+	<wsdl:message name="ResourceUnknownFault">
+		<wsdl:part name="ResourceUnknownFault" element="wsrf-r:ResourceUnknownFault" />
+	</wsdl:message> 
+	<wsdl:message name="ResourceUnavailableFault">
+		<wsdl:part name="ResourceUnavailableFault" element="wsrf-r:ResourceUnavailableFault" />
+	</wsdl:message>
+	<wsdl:message name="GetResourcePropertyDocumentRequest">
+		<wsdl:part name="GetResourcePropertyDocumentRequest" element="wsrf-rp:GetResourcePropertyDocument"/>
+	</wsdl:message>
+	<wsdl:message name="GetResourcePropertyDocumentResponse">
+		<wsdl:part name="GetResourcePropertyDocumentResponse" element="wsrf-rp:GetResourcePropertyDocumentResponse"/>
+	</wsdl:message>
+	<wsdl:message name="GetResourcePropertyRequest">
+		<wsdl:part name="GetResourcePropertyRequest" element="wsrf-rp:GetResourceProperty" />
+	</wsdl:message>
+	<wsdl:message name="GetResourcePropertyResponse">
+		<wsdl:part name="GetResourcePropertyResponse" element="wsrf-rp:GetResourcePropertyResponse" />
+	</wsdl:message>
+	<wsdl:message name="InvalidResourcePropertyQNameFault">
+		<wsdl:part name="InvalidResourcePropertyQNameFault" element="wsrf-rp:InvalidResourcePropertyQNameFault" />
+	</wsdl:message>
+	<wsdl:message name="GetMultipleResourcePropertiesRequest">
+    	<wsdl:part name="GetMultipleResourcePropertiesRequest" element="wsrf-rp:GetMultipleResourceProperties" />
+    </wsdl:message>
+    <wsdl:message name="GetMultipleResourcePropertiesResponse">
+    	<wsdl:part name="GetMultipleResourcePropertiesResponse" element="wsrf-rp:GetMultipleResourcePropertiesResponse" />
+    </wsdl:message>
+	<wsdl:portType 
+		name="ServiceGroupEntryPortType" 
+	    wsrf-rp:ResourceProperties="wsrf-sg:ServiceGroupEntryRP">
+		<wsdl:operation name="GetMetadata">
+			<wsdl:input name="GetMetadataMsg" message="tns:GetMetadataMsg"/>
+			<wsdl:output name="GetMetadataResponseMsg" message="tns:GetMetadataResponseMsg"/>
+		</wsdl:operation>
+		<wsdl:operation name="GetResourcePropertyDocument">
+			<wsdl:input name="GetResourcePropertyDocumentRequest" message="tns:GetResourcePropertyDocumentRequest"/>
+			<wsdl:output name="GetResourcePropertyDocumentResponse" message="tns:GetResourcePropertyDocumentResponse"/>
+			<wsdl:fault name="ResourceUnknownFault" message="tns:ResourceUnknownFault"/>
+			<wsdl:fault name="ResourceUnavailableFault" message="tns:ResourceUnavailableFault"/>
+		</wsdl:operation>
+		<wsdl:operation name="GetResourceProperty">
+			<wsdl:input name="GetResourcePropertyRequest" message="tns:GetResourcePropertyRequest" />
+			<wsdl:output name="GetResourcePropertyResponse" message="tns:GetResourcePropertyResponse" />
+			<wsdl:fault name="ResourceUnknownFault" message="tns:ResourceUnknownFault"/>
+			<wsdl:fault name="ResourceUnavailableFault" message="tns:ResourceUnavailableFault"/>
+			<wsdl:fault name="InvalidResourcePropertyQNameFault" message="tns:InvalidResourcePropertyQNameFault" />
+		</wsdl:operation>
+		<wsdl:operation name="GetMultipleResourceProperties">
+			<wsdl:input name="GetMultipleResourcePropertiesRequest" message="tns:GetMultipleResourcePropertiesRequest" />
+			<wsdl:output name="GetMultipleResourcePropertiesResponse" message="tns:GetMultipleResourcePropertiesResponse" />
+			<wsdl:fault name="ResourceUnknownFault" message="tns:ResourceUnknownFault"/>
+			<wsdl:fault name="ResourceUnavailableFault" message="tns:ResourceUnavailableFault"/>
+			<wsdl:fault name="InvalidResourcePropertyQNameFault" message="tns:InvalidResourcePropertyQNameFault" />
+    	</wsdl:operation>
+	</wsdl:portType>
+	<wsdl:binding name="ServiceGroupEntryBinding" type="tns:ServiceGroupEntryPortType">
+		<wsdl-soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
+		<wsdl:operation name="GetMetadata">
+			<wsdl-soap:operation soapAction="GetMetadata" />
+			<wsdl:input>
+				<wsdl-soap:body 
+					use="encoded"
+					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
+			</wsdl:input>
+			<wsdl:output>
+				<wsdl-soap:body 
+					use="encoded"
+					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
+			</wsdl:output>
+		</wsdl:operation>
+        <wsdl:operation name="GetResourcePropertyDocument">
+        	<wsdl-soap:operation soapAction="GetResourcePropertyDocument"/>
+        	<wsdl:input name="GetResourcePropertyDocumentRequest">
+        		<wsdl-soap:body 
+        			use="encoded"
+					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+        	</wsdl:input><wsdl:output name="GetResourcePropertyDocumentResponse">
+        		<wsdl-soap:body 
+        			use="encoded" 
+					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+        	</wsdl:output>
+        	<wsdl:fault name="ResourceUnknownFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="ResourceUnknownFault"/>
+        	</wsdl:fault>
+        	<wsdl:fault name="ResourceUnavailableFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="ResourceUnavailableFault"/>
+        	</wsdl:fault>
+        </wsdl:operation>
+        <wsdl:operation name="GetResourceProperty">
+        	<wsdl-soap:operation soapAction="GetResourceProperty"/>
+        	<wsdl:input name="GetResourcePropertyRequest">
+        		<wsdl-soap:body 
+        			use="encoded"
+					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+        	</wsdl:input><wsdl:output name="GetResourcePropertyResponse">
+        		<wsdl-soap:body 
+        			use="encoded" 
+					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+        	</wsdl:output>
+        	<wsdl:fault name="ResourceUnknownFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="ResourceUnknownFault"/>
+        	</wsdl:fault>
+        	<wsdl:fault name="ResourceUnavailableFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="ResourceUnavailableFault"/>
+        	</wsdl:fault>
+        	<wsdl:fault name="InvalidResourcePropertyQNameFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="InvalidResourcePropertyQNameFault"/>
+        	</wsdl:fault>
+        </wsdl:operation>
+        <wsdl:operation name="GetMultipleResourceProperties">
+        	<wsdl-soap:operation soapAction="GetMultipleResourceProperties"/>
+        	<wsdl:input name="GetMultipleResourcePropertiesRequest">
+        		<wsdl-soap:body 
+        			use="encoded"
+					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+        	</wsdl:input><wsdl:output name="GetMultipleResourcePropertiesResponse">
+        		<wsdl-soap:body 
+        			use="encoded" 
+					encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
+        	</wsdl:output>
+        	<wsdl:fault name="ResourceUnknownFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="ResourceUnknownFault"/>
+        	</wsdl:fault>
+        	<wsdl:fault name="ResourceUnavailableFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="ResourceUnavailableFault"/>
+        	</wsdl:fault>
+        	<wsdl:fault name="InvalidResourcePropertyQNameFault">
+        		<wsdl-soap:fault 
+        			use="encoded" 
+        			name="InvalidResourcePropertyQNameFault"/>
+        	</wsdl:fault>
+        </wsdl:operation>
+    </wsdl:binding>
+	<wsdl:service name="ServiceGroupEntryService">
+    	<wsdl:port name="ServiceGroupEntryPort" binding="tns:ServiceGroupEntryBinding">
+    		<wsdl-soap:address location="http://localhost:8080/test-wsrf/services/ServiceGroupEntry"/>
+    	</wsdl:port>
+	</wsdl:service>
+</wsdl:definitions>

Added: webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/WsResource.java
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/WsResource.java?rev=413698&view=auto
==============================================================================
--- webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/WsResource.java (added)
+++ webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/WsResource.java Mon Jun 12 09:12:15 2006
@@ -0,0 +1,39 @@
+/*=============================================================================*
+ *  Copyright 2006 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *=============================================================================*/
+
+package org.apache.muse.ws.resource;
+
+import org.apache.muse.core.Resource;
+import org.apache.muse.ws.resource.properties.ResourcePropertyCollection;
+
+/**
+ * 
+ * WsResource is an extension of the core Muse Resource component. It adds the 
+ * concept of a state model via WS-ResourceProperties. Note that the addition 
+ * of the WSRP ResourcePropertyCollection does <b>not</b> imply that WsResource 
+ * resource types have to expose any of the WSRP capabilities. The state model 
+ * will be available no matter how many WSRP capabilities are exposed to remote 
+ * clients, if any; the WSRP capabilities themselves will simply push down on 
+ * the ResourcePropertyCollection as part of their implementations.
+ *  
+ * @author Dan Jemiolo (danj)
+ * 
+ */
+
+public interface WsResource extends Resource
+{
+    ResourcePropertyCollection getPropertyCollection();
+}

Added: webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/WsResourceCapability.java
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/WsResourceCapability.java?rev=413698&view=auto
==============================================================================
--- webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/WsResourceCapability.java (added)
+++ webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/WsResourceCapability.java Mon Jun 12 09:12:15 2006
@@ -0,0 +1,40 @@
+/*=============================================================================*
+ *  Copyright 2006 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *=============================================================================*/
+
+package org.apache.muse.ws.resource;
+
+import org.apache.muse.core.Capability;
+
+/**
+ * 
+ * WsResourceCapability is an extension of the core Muse Capability concept. 
+ * It provides a safely-typed convenience method for accessing the WS-resource 
+ * that contains the capability as well as generic, WSRP-like methods for 
+ * accessing its property values. A WsResourceCapability is responsible for 
+ * its own state - the WSRP ResourcePropertyCollection will use these capabilities 
+ * as delegates for reading and writing property values. This allows the 
+ * WS-resource capabilities to leverage different state models within a single 
+ * resource type.
+ *
+ * @author Dan Jemiolo (danj)
+ *
+ */
+
+public interface WsResourceCapability 
+    extends Capability, WsResourceCapabilityProperties
+{
+    WsResource getWsResource();
+}

Added: webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/WsResourceCapabilityProperties.java
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/WsResourceCapabilityProperties.java?rev=413698&view=auto
==============================================================================
--- webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/WsResourceCapabilityProperties.java (added)
+++ webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/WsResourceCapabilityProperties.java Mon Jun 12 09:12:15 2006
@@ -0,0 +1,59 @@
+/*=============================================================================*
+ *  Copyright 2006 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *=============================================================================*/
+
+package org.apache.muse.ws.resource;
+
+import javax.xml.namespace.QName;
+
+import org.w3c.dom.Element;
+
+import org.apache.muse.ws.resource.basefaults.BaseFault;
+
+/**
+ * 
+ * WsResourceCapabilityProperties is a collection of generic, WSRP-like methods 
+ * that can be used by the WSRP ResourcePropertyCollection (or any other code) 
+ * to read and write a capability's property values. In the case of the WSRP 
+ * implementation, these methods will be used as part of its delegation model, 
+ * wherein the capability is responsible for the maintenance of its properties 
+ * and the WSRP implementation provides any WSRP-specific logic related to 
+ * permissions, validation, and faults.
+ *
+ * @author Dan Jemiolo (danj)
+ *
+ */
+
+public interface WsResourceCapabilityProperties
+{
+    /**
+     * 
+     * @return The names of the resource properties defined by this capability.
+     *
+     */
+    QName[] getPropertyNames();
+    
+    Element[] getProperty(QName property)
+        throws BaseFault;
+    
+    void deleteProperty(QName property) 
+        throws BaseFault;
+    
+    void insertProperty(QName property, Element[] values)
+        throws BaseFault;
+    
+    void updateProperty(QName property, Element[] values)
+        throws BaseFault;
+}

Added: webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/WsrfConstants.java
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/WsrfConstants.java?rev=413698&view=auto
==============================================================================
--- webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/WsrfConstants.java (added)
+++ webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/WsrfConstants.java Mon Jun 12 09:12:15 2006
@@ -0,0 +1,46 @@
+/*=============================================================================*
+ *  Copyright 2006 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *=============================================================================*/
+
+package org.apache.muse.ws.resource;
+
+import javax.xml.namespace.QName;
+
+/**
+ * 
+ * WsrfConstants is a collection of constants defined in the WS-ResourceFramework 
+ * spec, version 1.2. These values only pertain to the core WSRF spec, not the 
+ * other four specs that build on top of it.
+ *
+ * @author Dan Jemiolo (danj)
+ *
+ */
+
+public class WsrfConstants
+{
+    public static final String NAMESPACE_URI = "http://docs.oasis-open.org/wsrf/r-2";
+
+    public static final String WSDL_NAMESPACE_URI = "http://docs.oasis-open.org/wsrf/rw-2";
+    
+    public static final String PREFIX = "wsrf-r";
+    
+    public static final String WSDL_PREFIX = "wsrf-rw";
+    
+    public static final QName RESOURCE_UNKNOWN_QNAME = 
+        new QName(WSDL_NAMESPACE_URI, "ResourceUnknownFault", WSDL_PREFIX);
+    
+    public static final QName RESOURCE_UNAVAILABLE_QNAME = 
+        new QName(WSDL_NAMESPACE_URI, "ResourceUnavailableFault", WSDL_PREFIX);
+}

Added: webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/basefaults/BaseFault.java
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/basefaults/BaseFault.java?rev=413698&view=auto
==============================================================================
--- webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/basefaults/BaseFault.java (added)
+++ webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/basefaults/BaseFault.java Mon Jun 12 09:12:15 2006
@@ -0,0 +1,197 @@
+/*=============================================================================*
+ *  Copyright 2006 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *=============================================================================*/
+
+package org.apache.muse.ws.resource.basefaults;
+
+import java.text.ParseException;
+import java.util.Date;
+
+import javax.xml.namespace.QName;
+
+import org.w3c.dom.Element;
+import org.apache.muse.util.xml.XmlUtils;
+import org.apache.muse.util.xml.XsdUtils;
+import org.apache.muse.ws.addressing.EndpointReference;
+import org.apache.muse.ws.addressing.soap.SoapFault;
+
+/**
+ *
+ * SimpleBaseFault is Muse's default implementation of the WS-BaseFaults 
+ * SimpleBaseFault type. This can be used as a standalone class or (more commonly) 
+ * as a base class for more concrete fault types. WS-BF XML parsing and 
+ * serialization is also handled by this class.
+ *
+ * @author Dan Jemiolo (danj)
+ *
+ */
+
+public abstract class BaseFault extends SoapFault
+{
+    private static final long serialVersionUID = 7582724758621882686L;
+        
+    //
+    // Where the fault was generated
+    //
+    private EndpointReference _origin = null;
+    
+    //
+    // When the fault was generated
+    //
+    private Date _timestamp = new Date();
+    
+    private Element _errorCode = null;    
+    private String _errorCodeDialect = null;
+    
+    private QName _name = null;
+    
+    /**
+     * 
+     * Creates a new SimpleBaseFault by parsing the given XML according to the 
+     * WS-BF spec. This constructor only checks for elements and values 
+     * defined in WS-BF and does not fail if extensions are added to the 
+     * fault type.
+     * <br><br>
+     * The timestamp for this fault is the one specified in the XML, 
+     * regardless of when this object is created.
+     *
+     * @param xml
+     *        The XML representation of a WS-BF SimpleBaseFault.
+     *
+     */
+    public BaseFault(Element xml)
+    {
+        //
+        // set the exception message to be the WS-BF Description
+        //
+        super(xml);
+        
+        Element detail = getDetail();
+        _name = XmlUtils.getElementQName(detail);
+        
+        //
+        // set the timestamp - this is a required field
+        //
+        String timeText = XmlUtils.getElementText(detail, WsbfConstants.TIMESTAMP_QNAME);
+        
+        try
+        {
+            if (timeText != null)
+                _timestamp = XsdUtils.getLocalTime(timeText);
+        }
+        
+        catch (ParseException error)
+        {
+            //
+            // nothing we can do - throwing on a fault creation won't help us. 
+            // this fault will just use the system's current timestamp.
+            //
+        }
+        
+        //
+        // set the origin EPR (optional)
+        //
+        Element eprXML = XmlUtils.getElement(detail, WsbfConstants.ORIGINATOR_QNAME);
+        
+        try
+        {
+            if (eprXML != null)
+                setOriginReference(new EndpointReference(eprXML, false));
+        }
+        
+        catch (Throwable error)
+        {
+            //
+            // NOTE: This error occurs if the SimpleBaseFault XML had an invalid 
+            //       EPR definition for wsbf:OriginReference. Because this 
+            //       fault may be coming from an external service, we do 
+            //       not want to throw - the only thing worse than having a 
+            //       fault with incomplete data is having a runtime exception 
+            //       thrown when you really want to respond to the fault.
+            //
+        }
+        
+        //
+        // set the error code (optional)
+        //
+        Element errorXML = XmlUtils.getElement(detail, WsbfConstants.ERROR_CODE_QNAME);
+        
+        if (errorXML != null)
+        {
+            Element error = XmlUtils.getFirstElement(errorXML);
+            String dialect = errorXML.getAttribute(WsbfConstants.ERROR_CODE_DIALECT);
+            setErrorCode(error, dialect);
+        }
+    }
+    
+    public BaseFault(QName name, String message)
+    {
+        super(message);
+        _name = name;
+    }
+    
+    public BaseFault(QName name, String message, Throwable cause)
+    {
+        super(message, cause);
+        _name = name;
+    }
+    
+    public BaseFault(QName name, Throwable cause)
+    {
+        super(cause);
+        _name = name;
+    }
+    
+    public final QName getName()
+    {
+        return _name;
+    }
+    
+    public final String getDescription()
+    {
+        return getMessage();
+    }
+    
+    public final Element getErrorCode()
+    {
+        return _errorCode;
+    }
+    
+    public final String getErrorCodeDialect()
+    {
+        return _errorCodeDialect;
+    }
+    
+    public final EndpointReference getOriginReference()
+    {
+        return _origin;
+    }
+    
+    public final Date getTimestamp()
+    {
+        return _timestamp;
+    }
+    
+    public final void setErrorCode(Element errorCode, String errorCodeDialect)
+    {
+        _errorCode = errorCode;
+        _errorCodeDialect = errorCodeDialect;
+    }
+    
+    public final void setOriginReference(EndpointReference origin)
+    {
+        _origin = new EndpointReference(origin, WsbfConstants.ORIGINATOR_QNAME);
+    }
+}

Added: webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/basefaults/WsbfConstants.java
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/basefaults/WsbfConstants.java?rev=413698&view=auto
==============================================================================
--- webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/basefaults/WsbfConstants.java (added)
+++ webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/basefaults/WsbfConstants.java Mon Jun 12 09:12:15 2006
@@ -0,0 +1,55 @@
+/*=============================================================================*
+ *  Copyright 2006 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *=============================================================================*/
+
+package org.apache.muse.ws.resource.basefaults;
+
+import javax.xml.namespace.QName;
+
+/**
+ *
+ * WsbfConstants is a collection of properties that is useful when programming 
+ * against the WS-BaseFaults spec. This class uses WS-BF v1.2, draft 01.
+ *
+ * @author Dan Jemiolo (danj)
+ *
+ */
+
+public class WsbfConstants
+{
+    public static final String NAMESPACE_URI = "http://docs.oasis-open.org/wsrf/bf-2";
+
+    public static final String PREFIX = "wsrf-bf";
+    
+    public static final QName BASE_FAULT_QNAME = 
+        new QName(NAMESPACE_URI, "BaseFault", PREFIX);
+
+    public static final QName DESCRIPTION_QNAME = 
+        new QName(NAMESPACE_URI, "Description", PREFIX);
+    
+    public static final QName ERROR_CODE_QNAME = 
+        new QName(NAMESPACE_URI, "ErrorCode", PREFIX);
+    
+    public static final String ERROR_CODE_DIALECT = "dialect";
+
+    public static final QName ORIGINATOR_QNAME = 
+        new QName(NAMESPACE_URI, "OriginatorReference", PREFIX);
+    
+    public static final QName TIMESTAMP_QNAME = 
+        new QName(NAMESPACE_URI, "Timestamp", PREFIX);
+    
+    public static final QName FAULT_CAUSE_QNAME = 
+        new QName(NAMESPACE_URI, "FaultCause", PREFIX);
+}

Added: webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/basefaults/WsbfUtils.java
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/basefaults/WsbfUtils.java?rev=413698&view=auto
==============================================================================
--- webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/basefaults/WsbfUtils.java (added)
+++ webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/basefaults/WsbfUtils.java Mon Jun 12 09:12:15 2006
@@ -0,0 +1,30 @@
+/*=============================================================================*
+ *  Copyright 2006 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *=============================================================================*/
+
+package org.apache.muse.ws.resource.basefaults;
+
+import org.apache.muse.ws.resource.faults.ResourceUnavailableFault;
+
+public class WsbfUtils
+{
+    public static BaseFault convertToFault(Throwable error)
+    {
+        if (error instanceof BaseFault)
+            return (BaseFault)error;
+        
+        return new ResourceUnavailableFault(error);
+    }
+}

Added: webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/ext/WsrfExtConstants.java
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/ext/WsrfExtConstants.java?rev=413698&view=auto
==============================================================================
--- webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/ext/WsrfExtConstants.java (added)
+++ webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/ext/WsrfExtConstants.java Mon Jun 12 09:12:15 2006
@@ -0,0 +1,51 @@
+/*=============================================================================*
+ *  Copyright 2006 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *=============================================================================*/
+
+package org.apache.muse.ws.resource.ext;
+
+import javax.xml.namespace.QName;
+
+/**
+ * 
+ * WsrfExtConstants is a collection of constants used by Muse to extend the 
+ * base WSRF spec. Most of the identifiers here are for common faults that 
+ * happen frequently in the WSRP capability implementations.
+ *
+ * @author Dan Jemiolo (danj)
+ *
+ */
+
+public class WsrfExtConstants
+{
+    public static final String NAMESPACE_URI = "http://ws.apache.org/muse/wsrf";
+    
+    public static final String PREFIX = "muse-wsrf";
+    
+    public static final QName INVALID_MESSAGE_FORMAT_QNAME = 
+        new QName(NAMESPACE_URI, "InvalidMessageFormat", PREFIX);
+    
+    public static final QName METADATA_VALIDATION_ERROR_QNAME = 
+        new QName(NAMESPACE_URI, "MetadataValidationErrorFault", PREFIX);
+    
+    public static final QName RESOURCE_INITIALIZATION_QNAME = 
+        new QName(NAMESPACE_URI, "ResourceInitializationFault", PREFIX);
+    
+    public static final QName SCHEMA_VALIDATION_ERROR_QNAME = 
+        new QName(NAMESPACE_URI, "SchemaValidationErrorFault", PREFIX);
+    
+    public static final QName SERIALIZATION_ERROR_QNAME = 
+        new QName(NAMESPACE_URI, "SerializationErrorFault", PREFIX);
+}

Added: webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/ext/faults/InvalidMessageFormatFault.java
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/ext/faults/InvalidMessageFormatFault.java?rev=413698&view=auto
==============================================================================
--- webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/ext/faults/InvalidMessageFormatFault.java (added)
+++ webservices/muse/trunk/modules/muse-wsrf/src/org/apache/muse/ws/resource/ext/faults/InvalidMessageFormatFault.java Mon Jun 12 09:12:15 2006
@@ -0,0 +1,51 @@
+/*=============================================================================*
+ *  Copyright 2006 The Apache Software Foundation
+ *
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *=============================================================================*/
+
+package org.apache.muse.ws.resource.ext.faults;
+
+import org.w3c.dom.Element;
+
+import org.apache.muse.ws.addressing.soap.SoapConstants;
+import org.apache.muse.ws.resource.basefaults.BaseFault;
+import org.apache.muse.ws.resource.ext.WsrfExtConstants;
+
+public class InvalidMessageFormatFault extends BaseFault
+{
+    private static final long serialVersionUID = 4874022523783312375L;
+
+    public InvalidMessageFormatFault(Element xml)
+    {
+        super(xml);
+    }
+
+    public InvalidMessageFormatFault(String message)
+    {
+        super(WsrfExtConstants.INVALID_MESSAGE_FORMAT_QNAME, message);
+        setCode(SoapConstants.SENDER_QNAME);
+    }
+
+    public InvalidMessageFormatFault(String message, Throwable cause)
+    {
+        super(WsrfExtConstants.INVALID_MESSAGE_FORMAT_QNAME, message, cause);
+        setCode(SoapConstants.SENDER_QNAME);
+    }
+
+    public InvalidMessageFormatFault(Throwable cause)
+    {
+        super(WsrfExtConstants.INVALID_MESSAGE_FORMAT_QNAME, cause);
+        setCode(SoapConstants.SENDER_QNAME);
+    }
+}



---------------------------------------------------------------------
To unsubscribe, e-mail: muse-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: muse-commits-help@ws.apache.org