You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stanbol.apache.org by ci...@apache.org on 2011/04/07 10:04:47 UTC

svn commit: r1089764 [6/6] - in /incubator/stanbol/trunk/commons/web/ontology: ./ src/ src/main/ src/main/java/ src/main/java/org/ src/main/java/org/apache/ src/main/java/org/apache/stanbol/ src/main/java/org/apache/stanbol/ontologymanager/ src/main/ja...

Added: incubator/stanbol/trunk/commons/web/ontology/src/main/resources/org/apache/stanbol/commons/web/ontologymanager/store/templates/org/apache/stanbol/ontologymanager/store/rest/resources/particularIndividual.ftl
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/commons/web/ontology/src/main/resources/org/apache/stanbol/commons/web/ontologymanager/store/templates/org/apache/stanbol/ontologymanager/store/rest/resources/particularIndividual.ftl?rev=1089764&view=auto
==============================================================================
--- incubator/stanbol/trunk/commons/web/ontology/src/main/resources/org/apache/stanbol/commons/web/ontologymanager/store/templates/org/apache/stanbol/ontologymanager/store/rest/resources/particularIndividual.ftl (added)
+++ incubator/stanbol/trunk/commons/web/ontology/src/main/resources/org/apache/stanbol/commons/web/ontologymanager/store/templates/org/apache/stanbol/ontologymanager/store/rest/resources/particularIndividual.ftl Thu Apr  7 08:04:44 2011
@@ -0,0 +1,275 @@
+<#import "/imports/common.ftl" as common>
+<#import "/imports/prevNextButtons.ftl" as buttons>
+<@common.page title="Individual Context of ${it.metadata.individualMetaInformation.URI}" hasrestapi=true>
+<div class="panel" id="webview">
+<script type="text/javascript" src="static/scripts/individualUpdater.js"></script>
+<#if it.metadata.containerClasses.classMetaInformation?size != 0>
+	<fieldset>
+		<legend><b>Types</b></legend>
+		<div class="ontology">
+			<div class="collapsed">
+				<fieldset>
+				    <h4 class="ontologySubmitHeader">Add Type</h4>
+				  	<div class="ontologyCollapsable">
+					  <p>Class URI: <textarea class="typeInput"rows="1" name="classURI"></textarea></p>
+					  <p><button onClick="javascript: PSTORE.HTTPHelper.send('POST', '${it.metadata.individualMetaInformation.href}/types', false, false, 'containerClassURIs', $('.typeInput')[0].value)">Add Type</button></p>
+					 </div>
+				  </fieldset>
+			</div>
+		</div>
+		<#list it.metadata.containerClasses.classMetaInformation?sort_by("URI") as cls>
+			<div class="ontology contClss ${cls_index}"> 
+				<div class="collapsed">
+					<a class="imgOntClass" href="${cls.href}">${cls.URI}</a>
+					<button class="delete" title="Delete ${cls.URI}" onClick="javascript: PSTORE.HTTPHelper.send('DELETE', '${it.metadata.individualMetaInformation.href}/types/${cls.URI}', true, false, null, null)"></button>	
+					<div class ="ontologyHeader"></div>
+					<ul class= "ontologyCollapsable">
+						<li><b>Description:</b> ${cls.description}</li>
+						<li><b>Namespace:</b> ${cls.namespace}</li>
+						<li><b>Local Name:</b> ${cls.localName}</li>
+					</ul>
+				</div>	
+			</div>
+		</#list>
+		<@buttons.prevNextButtons className="contClss"/>
+	</fieldset>
+</#if>
+	<fieldset>
+		<legend><b>Property Assertions</b></legend>
+		<div class="props">
+			<fieldset>
+				<div class="ontology">
+					<div class="collapsed">
+				    <h4 class="ontologySubmitHeader">Add Property Assertions</h4>
+				    	<div class="ontologyCollapsable">
+					      <input class="radioData" type="radio" name="group1" value="data" checked>Data Property<br>
+						  <input class="radioObject" type="radio" name="group1" value="object" >Object Property<br>
+						  <p>Property URI: <textarea class="propertyInput"rows="1" ></textarea></p>
+						  <p>Value: <textarea class="valueInput"rows="1" ></textarea></p>
+						  <p><button  name="Property Assertion" onClick="javascript: addPropAssAndPost()">Add Property Assertion</button></p>
+					 	</div>
+					</div>
+				</div>
+			</fieldset>
+<#if it.metadata.propertyAssertions.propertyAssertion?size != 0>
+			<table>
+				<tbody>
+					<tr>
+						<th>Property</th><th>Value</th>
+					</tr>
+					<#list it.metadata.propertyAssertions.propertyAssertion as propAssert> 
+							<tr class="propAss ${propAssert_index}">
+								<td>
+									<#if propAssert.individualMetaInformationOrLiteral?first?is_hash>
+										<p class="imgOntObjectProp">&nbsp;&nbsp;&nbsp;&nbsp;</p>
+									<#else>
+										<p class="imgOntDataProp">&nbsp;&nbsp;&nbsp;&nbsp;</p>
+									</#if>
+									<a href="${propAssert.propertyMetaInformation.href}">${propAssert.propertyMetaInformation.URI}</a>
+								</td>
+								<td>
+								<#list propAssert.individualMetaInformationOrLiteral as propValue>
+									<#if propValue?is_hash>
+										<div class="collapsed">
+											<a class="imgOntInd" href="${propValue.href}">${propValue.URI}</a>
+											<button class="delete" title="Delete ${propValue.URI}" onClick="javascript: PSTORE.HTTPHelper.send('DELETE', '${it.metadata.individualMetaInformation.href}/propertyAssertions/'+PSTORE.HTTPHelper.normalize('${propAssert.propertyMetaInformation.URI}') +'/objects/${propValue.URI}', true, false, null, null)"></button>
+											</ul>
+										</div>	
+										<br>
+									<#else>
+										${propValue}
+										<button class="delete" title="Delete ${propValue}" onClick="javascript: PSTORE.HTTPHelper.send('POST', '${it.metadata.individualMetaInformation.href}/propertyAssertions/'+PSTORE.HTTPHelper.normalize('${propAssert.propertyMetaInformation.URI}') +'/literals', false, true, 'value', '${propValue}')"></button>
+										<br>
+									</#if>
+								</#list>
+								</td>
+							</tr>
+					</#list>
+				</tbody>
+			</table>
+			<@buttons.prevNextButtons className="propAss"/>
+		</div>	
+</#if>
+	</fieldset>
+
+</div>
+<div class="panel" id="restapi" style="display: none;">
+<h3>Getting individual context of an individual</h3>
+<pre>
+curl -i -X GET -H "Accept:application/xml" http://localhost:8080/persistencestore/${it.metadata.individualMetaInformation.href}
+</pre>
+<p>Response :</p>
+<pre>
+HTTP/1.1 200 OK
+Content-Type: application/xml
+Transfer-Encoding: chunked
+Server: Jetty(6.1.x)
+
+&lt;?xml version="1.0" encoding="UTF-8" standalone="yes"?&gt;
+&lt;ns1:IndividualContext xmlns:ns1="model.rest.persistence.iks.srdc.com.tr" xmlns:ns2="http://www.w3.org/1999/xlink"&gt;
+    &lt;ns1:IndividualMetaInformation ns2:href="ontologies/http://cohse.semanticweb.org/ontologies/people/individuals/http://cohse.semanticweb.org/ontologies/people/Walt"&gt;
+        &lt;ns1:URI&gt;http://cohse.semanticweb.org/ontologies/people#Walt&lt;/ns1:URI&gt;
+        &lt;ns1:Description&gt;&lt;/ns1:Description&gt;
+        &lt;ns1:Namespace&gt;http://cohse.semanticweb.org/ontologies/people#&lt;/ns1:Namespace&gt;
+        &lt;ns1:LocalName&gt;Walt&lt;/ns1:LocalName&gt;
+    &lt;/ns1:IndividualMetaInformation&gt;
+    &lt;ns1:ContainerClasses&gt;
+        &lt;ns1:ClassMetaInformation ns2:href="ontologies/http://cohse.semanticweb.org/ontologies/people/classes/http://cohse.semanticweb.org/ontologies/people/person"&gt;
+            &lt;ns1:URI&gt;http://cohse.semanticweb.org/ontologies/people#person&lt;/ns1:URI&gt;
+            &lt;ns1:Description&gt;&lt;/ns1:Description&gt;
+            &lt;ns1:Namespace&gt;http://cohse.semanticweb.org/ontologies/people#&lt;/ns1:Namespace&gt;
+            &lt;ns1:LocalName&gt;person&lt;/ns1:LocalName&gt;
+        &lt;/ns1:ClassMetaInformation&gt;
+    &lt;/ns1:ContainerClasses&gt;
+    &lt;ns1:PropertyAssertions&gt;
+        &lt;ns1:PropertyAssertion&gt;
+            &lt;ns1:PropertyMetaInformation ns2:href="ontologies/http://cohse.semanticweb.org/ontologies/people/objectProperties/http://cohse.semanticweb.org/ontologies/people/has_pet"&gt;
+                &lt;ns1:URI&gt;http://cohse.semanticweb.org/ontologies/people#has_pet&lt;/ns1:URI&gt;
+                &lt;ns1:Description&gt;&lt;/ns1:Description&gt;
+                &lt;ns1:Namespace&gt;http://cohse.semanticweb.org/ontologies/people#&lt;/ns1:Namespace&gt;
+                &lt;ns1:LocalName&gt;has_pet&lt;/ns1:LocalName&gt;
+            &lt;/ns1:PropertyMetaInformation&gt;
+            &lt;ns1:IndividualMetaInformation ns2:href="ontologies/http://cohse.semanticweb.org/ontologies/people/individuals/http://cohse.semanticweb.org/ontologies/people/Huey"&gt;
+                &lt;ns1:URI&gt;http://cohse.semanticweb.org/ontologies/people#Huey&lt;/ns1:URI&gt;
+                &lt;ns1:Description&gt;&lt;/ns1:Description&gt;
+                &lt;ns1:Namespace&gt;http://cohse.semanticweb.org/ontologies/people#&lt;/ns1:Namespace&gt;
+                &lt;ns1:LocalName&gt;Huey&lt;/ns1:LocalName&gt;
+            &lt;/ns1:IndividualMetaInformation&gt;
+            &lt;ns1:IndividualMetaInformation ns2:href="ontologies/http://cohse.semanticweb.org/ontologies/people/individuals/http://cohse.semanticweb.org/ontologies/people/Louie"&gt;
+                &lt;ns1:URI&gt;http://cohse.semanticweb.org/ontologies/people#Louie&lt;/ns1:URI&gt;
+                &lt;ns1:Description&gt;&lt;/ns1:Description&gt;
+                &lt;ns1:Namespace&gt;http://cohse.semanticweb.org/ontologies/people#&lt;/ns1:Namespace&gt;
+                &lt;ns1:LocalName&gt;Louie&lt;/ns1:LocalName&gt;
+            &lt;/ns1:IndividualMetaInformation&gt;
+            &lt;ns1:IndividualMetaInformation ns2:href="ontologies/http://cohse.semanticweb.org/ontologies/people/individuals/http://cohse.semanticweb.org/ontologies/people/Dewey"&gt;
+                &lt;ns1:URI&gt;http://cohse.semanticweb.org/ontologies/people#Dewey&lt;/ns1:URI&gt;
+                &lt;ns1:Description&gt;&lt;/ns1:Description&gt;
+                &lt;ns1:Namespace&gt;http://cohse.semanticweb.org/ontologies/people#&lt;/ns1:Namespace&gt;
+                &lt;ns1:LocalName&gt;Dewey&lt;/ns1:LocalName&gt;
+            &lt;/ns1:IndividualMetaInformation&gt;
+        &lt;/ns1:PropertyAssertion&gt;
+    &lt;/ns1:PropertyAssertions&gt;
+&lt;/ns1:IndividualContext&gt;
+</pre>
+
+<p>Individual Context contains following information:
+	<ul>
+		<li><b>Container Classes</b> as a list of ClassMetaInformation</li>
+		<li><b>Property Assertions</b> as a list of Property Assertion which includes
+			<ul>
+				<li><b>PropertyMetaInformation</b>, property of the assertion</li>
+				<li>IndividualMetaInformation or a literal value, object of the assertion</li>
+			</ul>
+		</li>
+	</ul>
+</p>
+
+<h3>Updating individual context of a datatype property</h3>
+
+<fieldset>
+	<legend><b>SubPath: /types  Method: POST </b></legend>
+	<table class="formParams">
+		<head>
+			<th width="20%">POST Parameter</th>
+			<th width="10%">Type</th>
+			<th width="70%">Explanation</th>
+		</head>
+		<body>
+			<tr>
+				<td>containerClassURI</td>
+				<td>List&lt;String&gt;</td>
+				<td>A list of existing class URIs which will be added as a type to this individual</td>
+			</tr>
+		</body>
+	</table>
+</fieldset>
+<fieldset>
+	<legend><b>SubPath:  /types/{classURI} Method : DELETE</b></legend> 
+	<p>Delete class indicated by class at path parameter from the type list of this object property</p>
+</fieldset>
+
+<fieldset>
+	<legend><b>SubPath: /propertyAssertions/{propertyURI}  Method: POST </b></legend>
+	<table class="formParams">
+		<head>
+			<th width="20%">POST Parameter</th>
+			<th width="10%">Type</th>
+			<th width="70%">Explanation</th>
+		</head>
+		<body>
+			<tr>
+				<td>objectValues</td>
+				<td>List&lt;String&gt;</td>
+				<td>A list of existing resource URIs which will be added as an assertion on property indicated by {propertyURI} on individual</td>
+			</tr>
+			<tr>
+				<td>literalValues</td>
+				<td>List&lt;String&gt;</td>
+				<td>A list of literal values which will be added as an assertion on property indicated by {propertyURI} on individual</td>
+			</tr>
+		</body>
+	</table>
+</fieldset>
+<fieldset>
+	<legend><b>SubPath:  /propertyAssertions/{propertyURI}/objects/{resourceURI} Method : DELETE</b></legend> 
+	<p>Delete resource indicated by {resourceURI} at path parameter from the list of property assertion of this individual on property indicated by {propertyURI}</p>
+</fieldset>
+
+<fieldset>
+	<legend><b>SubPath:  /propertyAssertions/{propertyURI}/literals Method : DELETE</b></legend>
+	<table class="formParams">
+		<head>
+			<th width="20%">POST Parameter</th>
+			<th width="10%">Type</th>
+			<th width="70%">Explanation</th>
+		</head>
+		<body>
+			<tr>
+				<td>value</td>
+				<td>List&lt;String&gt;</td>
+				<td>A literal  which will be deleted from assertions on property indicated by {propertyURI} on individual</td>
+			</tr>
+		</body>
+	</table> 
+	<p>Delete resource indicated by {resourceURI} at path parameter from the list of property assertion of this individual on property indicated by {propertyURI}</p>
+	<p><b>You should use POST method with X-HTTP-Method-Override header with value DELETE</b></p>
+</fieldset>
+
+
+</div>
+<script type="text/javascript">
+ 	
+ 	PAGING.adjustVisibility("contClss");
+ 	PAGING.adjustVisibility("propAss");
+ 	
+ 	var indUtil = PSTORE.indUtil;
+ 	var individual = indUtil.individual;
+ 	
+ 	function addTypeAndPost(){
+ 		individual.containerClass = ($('.typeInput')[0].value); 
+ 		 indUtil.post('${it.metadata.individualMetaInformation.href}');
+ 	}
+ 	
+ 	function addPropAssAndPost(){
+ 		individual.property = ($('.propertyInput')[0].value);
+ 		if($('.radioData')[0].checked){
+ 			PSTORE.HTTPHelper.send('POST','${it.metadata.individualMetaInformation.href}/propertyAssertions/' + $('.propertyInput')[0].value, true,false, 'literalValues', $('.valueInput')[0].value  );
+ 			//individual.literal = ($('.valueInput')[0].value);
+ 		}else if ($('.radioObject')[0].checked){
+ 			PSTORE.HTTPHelper.send('POST','${it.metadata.individualMetaInformation.href}/propertyAssertions/' + $('.propertyInput')[0].value, true,false, 'objectValues', $('.valueInput')[0].value  );
+ 			//individual.individual = ($('.valueInput')[0].value);
+ 		}
+ 		// indUtil.post('${it.metadata.individualMetaInformation.href}');
+ 	}
+ 	
+ 	
+	
+	$(".ontology .ontologyHeader").click(function () {
+	  $(this).parents("div").toggleClass("collapsed");
+	});
+	
+	$(".ontology .ontologySubmitHeader").click(function () {
+	  $(this).parents("div").toggleClass("collapsed");
+	}); 
+</script>
+</...@common.page>
\ No newline at end of file

Propchange: incubator/stanbol/trunk/commons/web/ontology/src/main/resources/org/apache/stanbol/commons/web/ontologymanager/store/templates/org/apache/stanbol/ontologymanager/store/rest/resources/particularIndividual.ftl
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/stanbol/trunk/commons/web/ontology/src/main/resources/org/apache/stanbol/commons/web/ontologymanager/store/templates/org/apache/stanbol/ontologymanager/store/rest/resources/particularObjectProperty.ftl
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/commons/web/ontology/src/main/resources/org/apache/stanbol/commons/web/ontologymanager/store/templates/org/apache/stanbol/ontologymanager/store/rest/resources/particularObjectProperty.ftl?rev=1089764&view=auto
==============================================================================
--- incubator/stanbol/trunk/commons/web/ontology/src/main/resources/org/apache/stanbol/commons/web/ontologymanager/store/templates/org/apache/stanbol/ontologymanager/store/rest/resources/particularObjectProperty.ftl (added)
+++ incubator/stanbol/trunk/commons/web/ontology/src/main/resources/org/apache/stanbol/commons/web/ontologymanager/store/templates/org/apache/stanbol/ontologymanager/store/rest/resources/particularObjectProperty.ftl Thu Apr  7 08:04:44 2011
@@ -0,0 +1,329 @@
+<#import "/imports/common.ftl" as common>
+<#import "/imports/prevNextButtons.ftl" as buttons>
+<#import "/imports/propertySerializer.ftl" as propSerializer>
+<@common.page title="Object Property Context of ${it.metadata.propertyMetaInformation.URI}" hasrestapi=true>
+<div class="panel" id="webview">
+		<!--FIXME Currently superProperties of this property are not changed using html interface-->
+	<script type="text/javascript" src="static/scripts/propertyUpdater.js"></script>
+<!-- Property Features-->
+	<fieldset>
+		<legend><b>Property Features</b></legend>
+			<input class="horizontal" name="propFeatFunc"   type="checkbox"  <#if it.metadata.isIsFunctional()>checked</#if>>Functional<br>
+			<input class="horizontal" name="propFeatTrans"   type="checkbox"  <#if it.metadata.isIsTransitive()>checked</#if>>Transitive<br>
+			<input class="horizontal" name="propFeatSymm"   type="checkbox"  <#if it.metadata.isIsSymmetric()>checked</#if>>Symmetric<br>
+			<input class="horizontal" name="propFeatInvFunc"   type="checkbox"  <#if it.metadata.isIsInverseFunctional()>checked</#if>>Inverse Functional<br>
+			<input type="button" value="Save Changes" onClick="javascript: PSTORE.propUtil.post('${it.metadata.propertyMetaInformation.href}')">
+	</fieldset>
+<!--Domains -->
+	<fieldset>
+		<legend><b>Object Property Domains</b></legend>
+		<div class="ontology">
+			<div class="collapsed">
+				<fieldset>
+				    <h4 class="ontologySubmitHeader">Add Domain</h4>
+				  	<div class="ontologyCollapsable">
+					  <p>Range URI: <textarea class="domainInput"rows="1" name="classURI"></textarea></p>
+					  <p><button  name="Add Domain" onClick="javascript: PSTORE.HTTPHelper.send('POST', '${it.metadata.propertyMetaInformation.href}/domains', false, false, 'domainURIs',$('.domainInput')[0].value )">Add Domain</button></p>
+					 </div>
+				  </fieldset>
+			</div>
+		</div>
+		<#if it.metadata.domain.classMetaInformationOrBuiltInResource?size == 0>
+			<em>There is no ranges declared for this object property.</em>
+		<#else>
+			<#list it.metadata.domain.classMetaInformationOrBuiltInResource as domain>
+				<#if domain?keys?seq_contains("href")>
+					<div class="ontology domainList ${domain_index}"> 
+						<div class="collapsed">
+							<a class="imgOntClass" href="${domain.href}">${domain.URI}</a> <button class="delete" title="Delete ${domain.URI}" onClick="javascript: PSTORE.HTTPHelper.send('DELETE', '${it.metadata.propertyMetaInformation.href}/domains/${domain.URI}', true, false, null, null)"></button>	
+						</div>
+					</div>
+				<#else>
+					<div class="ontology domainList ${domain_index}">
+						<b>URI:</b> ${domain.URI}<button class="delete" title="Delete ${domain.URI}" onClick="javascript: PSTORE.HTTPHelper.send('DELETE', '${it.metadata.propertyMetaInformation.href}/domains/${domain.URI}', true, false, null, null)"></button>
+					</div>
+				</#if>
+			</#list>
+			<@buttons.prevNextButtons className="domainList"/>
+		</#if>
+	</fieldset>
+<!--Ranges -->
+	<fieldset>
+		<legend><b>Object Property Ranges</b></legend>
+		<div class="ontology">
+			<div class="collapsed">
+				<fieldset>
+				    <h4 class="ontologySubmitHeader">Add Range</h4>    
+				  	<div class="ontologyCollapsable">
+					  <p>Range URI: <textarea class="rangeInput"rows="1" name="classURI"></textarea></p>
+					  <p><button  name="Add Range" onClick="javascript: PSTORE.HTTPHelper.send('POST', '${it.metadata.propertyMetaInformation.href}/ranges', false, false, 'rangeURIs',$('.rangeInput')[0].value )">Add Range</button></p>
+					 </div>
+				  </fieldset>
+			</div>
+		</div>
+		<#if it.metadata.range.classMetaInformationOrBuiltInResource?size == 0>
+			<em>There is no ranges declared for this object property.</em>
+		<#else>
+			<#list it.metadata.range.classMetaInformationOrBuiltInResource as range>
+				<#if range?keys?seq_contains("href")>
+					<div class="ontology rangeList ${range_index}"> 
+						<a class="imgOntClass" href="${range.href}">${range.URI}</a> <button class="delete" title="Delete ${range.URI}" onClick="javascript: PSTORE.HTTPHelper.send('DELETE', '${it.metadata.propertyMetaInformation.href}/ranges/${range.URI}', true, false, null, null)"></button>	
+					</div>
+				<#else>
+					<div class="ontology rangeList ${range_index}">
+						<b>URI:</b> ${range.URI} <button class="delete" title="Delete ${range.URI}" onClick="javascript: PSTORE.HTTPHelper.send('DELETE', '${it.metadata.propertyMetaInformation.href}/ranges/${range.URI}', true, false, null, null)"></button>
+					</div>
+				</#if>
+			</#list>
+			<@buttons.prevNextButtons className="rangeList"/>
+		</#if>
+	</fieldset>
+	
+<!-- Equivalent Properties -->
+	<#if it.metadata.equivalentProperties.propertyMetaInformation?size !=0>
+		<fieldset>
+			<legend><b>Equivalent Properties</b></legend>
+			<#list it.metadata.equivalentProperties.propertyMetaInformation?sort_by("URI") as prop>
+				<div class="ontology equProps ${prop_index}"> 
+				<div class="collapsed">
+					<a class="imgOntObjectClass" href="${prop.href}">${prop.URI}</a>
+				</div>
+			</div>
+			</#list>
+			<@buttons.prevNextButtons className="equProps"/>
+		</fieldset>
+	</#if>
+	
+<!-- Super Properties -->
+	<#if it.metadata.superProperties.propertyMetaInformation?size !=0>
+		<fieldset>
+			<legend><b>Super Properties</b></legend>
+			<#list it.metadata.superProperties.propertyMetaInformation?sort_by("URI") as prop>
+				<div class="ontology superProps ${prop_index}"> 
+				<div class="collapsed">
+					<a class="imgOntObjectProp" href="${prop.href}">${prop.URI}</a>
+				</div>
+			</div>
+			</#list>
+			<@buttons.prevNextButtons className="superProps"/>
+		</fieldset>
+	</#if>
+	<br>
+</div>
+<div class="panel" id="restapi" style="display: none;">
+<h3>Getting object property context of a  class</h3>
+<pre>
+curl -i -X GET -H "Accept:application/xml" http://localhost:8080/persistencestore/${it.metadata.propertyMetaInformation.href}
+</pre>
+<p>Response :</p>
+<pre>
+HTTP/1.1 200 OK
+Content-Type: application/xml
+Transfer-Encoding: chunked
+Server: Jetty(6.1.x)
+
+&lt;?xml version="1.0" encoding="UTF-8" standalone="yes"?&gt;
+&lt;ns1:ObjectPropertyContext xmlns:ns1="model.rest.persistence.iks.srdc.com.tr" xmlns:ns2="http://www.w3.org/1999/xlink" ns1:isSymmetric="false" ns1:isTransitive="false" ns1:isInverseFunctional="false" ns1:isFunctional="false"&gt;
+    &lt;ns1:PropertyMetaInformation ns2:href="ontologies/http://dbpedia.org/ontology//objectProperties/http://dbpedia.org/ontology/administrativeCollectivity"&gt;
+        &lt;ns1:URI&gt;http://dbpedia.org/ontology/administrativeCollectivity&lt;/ns1:URI&gt;
+        &lt;ns1:Description&gt;&lt;/ns1:Description&gt;
+        &lt;ns1:Namespace&gt;http://dbpedia.org/ontology/&lt;/ns1:Namespace&gt;
+        &lt;ns1:LocalName&gt;administrativeCollectivity&lt;/ns1:LocalName&gt;
+    &lt;/ns1:PropertyMetaInformation&gt;
+    &lt;ns1:Domain&gt;
+        &lt;ns1:ClassMetaInformation ns2:href="ontologies/http://dbpedia.org/ontology//classes/http://dbpedia.org/ontology/City"&gt;
+            &lt;ns1:URI&gt;http://dbpedia.org/ontology/City&lt;/ns1:URI&gt;
+            &lt;ns1:Description&gt;&lt;/ns1:Description&gt;
+            &lt;ns1:Namespace&gt;http://dbpedia.org/ontology/&lt;/ns1:Namespace&gt;
+            &lt;ns1:LocalName&gt;City&lt;/ns1:LocalName&gt;
+        &lt;/ns1:ClassMetaInformation&gt;
+    &lt;/ns1:Domain&gt;
+    &lt;ns1:Range&gt;
+        &lt;ns1:ClassMetaInformation ns2:href="ontologies/http://dbpedia.org/ontology//classes/http://dbpedia.org/ontology/PopulatedPlace">
+            &lt;ns1:URI>http://dbpedia.org/ontology/PopulatedPlace&lt;/ns1:URI>
+            &lt;ns1:Description>&lt;/ns1:Description>
+            &lt;ns1:Namespace>http://dbpedia.org/ontology/&lt;/ns1:Namespace>
+            &lt;ns1:LocalName>PopulatedPlace&lt;/ns1:LocalName&gt;
+        &lt;/ns1:ClassMetaInformation&gt;
+    &lt;/ns1:Range&gt;
+    &lt;ns1:EquivalentProperties/&gt;
+    &lt;ns1:SuperProperties/&gt;
+&lt;/ns1:ObjectPropertyContext&gt;
+</pre>
+
+<p>Object property Context contains following information:
+	<ul>
+		<li><b>Equivalent Properties</b> as a list of PropertyMetaInformation</li>
+		<li><b>Super Properties</b> as a list of PropertyMetaInformation</li>
+		<li>Whether the object property is <b>functional</b> or not</li>
+		<li>Whether the object property is <b>transitive</b> or not</li>
+		<li>Whether the object property is <b>symmetric</b> or not</li>
+		<li>Whether the object property is <b>inverse functional</b> or not</li>
+		<li><b>Domains</b> as a list of resource URIs or ClassMetaInformation</li>
+		<li><b>Ranges</b> as a list of resource URIs</li>
+	</ul>
+</p>
+
+<h3>Updating object property context of an object property</h3>
+<fieldset>
+	<legend>Form Paramaters</legend>
+	<table class="formParams">
+		<head>
+			<th width="20%">Parameter Name</th>
+			<th width="10%">Type</th>
+			<th width="70%">Explanation</th>
+		</head>
+			<tr>
+				<td>isFunctional</td>
+				<td>boolean</td>
+				<td>Boolean value indicating whether the object property is functional</td>
+			</tr>
+			<tr>
+				<td>isTransitive</td>
+				<td>boolean</td>
+				<td>Boolean value indicating whether the object property is transitive</td>
+			</tr>
+			<tr>
+				<td>isSymmetric</td>
+				<td>boolean</td>
+				<td>Boolean value indicating whether the object property is symmetric</td>
+			</tr>
+			<tr>
+				<td>isInverseFunctional</td>
+				<td>boolean</td>
+				<td>Boolean value indicating whether the object property is inverse functional</td>
+			</tr>
+		<body>
+		</body>
+	</table>
+</fieldset>
+
+<fieldset>
+	<legend><b>SubPath: /domains  Method: POST </b></legend>
+	<table class="formParams">
+		<head>
+			<th width="20%">POST Parameter</th>
+			<th width="10%">Type</th>
+			<th width="70%">Explanation</th>
+		</head>
+		<body>
+			<tr>
+				<td>domainURIs</td>
+				<td>List&lt;String&gt;</td>
+				<td>A list of existing class URIs which will be added as a domain to this object property</td>
+			</tr>
+		</body>
+	</table>
+</fieldset>
+<fieldset>
+	<legend><b>SubPath:  /domains/{domainURI} Method : DELETE</b></legend> 
+	<p>Delete domain indicated by domainURI at path parameter from the domain list of this object property</p>
+</fieldset>
+
+<fieldset>
+	<legend><b>SubPath: /ranges  Method: POST </b></legend>
+	<table class="formParams">
+		<head>
+			<th width="20%">POST Parameter</th>
+			<th width="10%">Type</th>
+			<th width="70%">Explanation</th>
+		</head>
+		<body>
+			<tr>
+				<td>rangeURIs</td>
+				<td>List&lt;String&gt;</td>
+				<td>A list of existing class URIs which will be added as a range to this object property</td>
+			</tr>
+		</body>
+	</table>
+</fieldset>
+<fieldset>
+	<legend><b>SubPath:  /ranges/{rangeURI} Method : DELETE</b></legend> 
+	<p>Delete range indicated by rangeURI at path parameter from the range list of this object property</p>
+</fieldset>
+
+<fieldset>
+	<legend><b>SubPath: /superProperties  Method: POST </b></legend>
+	<table class="formParams">
+		<head>
+			<th width="20%">POST Parameter</th>
+			<th width="10%">Type</th>
+			<th width="70%">Explanation</th>
+		</head>
+		<body>
+			<tr>
+				<td>superPropertyURIs</td>
+				<td>List&lt;String&gt;</td>
+				<td>A list of existing object property URIs which will be added as a super property to this object property</td>
+			</tr>
+		</body>
+	</table>
+</fieldset>
+<fieldset>
+	<legend><b>SubPath:  /superProperties/{propertyURI} Method : DELETE</b></legend> 
+	<p>Delete object property indicated by propertyURI at path parameter from the super properties list of this object property</p>
+</fieldset>
+
+<p>Example curl command</p>
+<pre>
+curl -i -X POST -H "Accept:application/xml" --data-urlencode isFuntional=true  http://localhost:8080/persistencestore/${it.metadata.propertyMetaInformation.href}
+</pre>
+<p>Response is the updated class context of the class</p>
+</div>
+
+<script>
+	PAGING.adjustVisibility("domainList");
+	PAGING.adjustVisibility("rangeList");
+	PAGING.adjustVisibility("equProps");
+	PAGING.adjustVisibility("superProps")
+	
+	<@propSerializer.property it=it.metadata/>
+
+ 	var propUtil = this.PSTORE.propUtil; 
+	
+	propUtil.addRangeAndPost = function () {
+ 		 propUtil.addRange($('.rangeInput')[0].value); 
+ 		 propUtil.post('${it.metadata.propertyMetaInformation.href}');
+ 	}
+ 	
+ 	propUtil.deleteRangeAndPost = function (uri){
+ 		propUtil.removeRange(uri);
+ 		propUtil.post('${it.metadata.propertyMetaInformation.href}');
+ 	}
+ 	
+ 	propUtil.addDomainAndPost = function (){
+ 		 propUtil.addDomain($('.domainInput')[0].value); 
+ 		 propUtil.post('${it.metadata.propertyMetaInformation.href}');
+ 	}
+ 	
+ 	propUtil.deleteDomainAndPost = function (uri){
+ 		propUtil.removeDomain(uri);
+ 		propUtil.post('${it.metadata.propertyMetaInformation.href}');
+ 	}
+ 	
+	$(".ontology .ontologyHeader").click(function () {
+	  $(this).parents("div").toggleClass("collapsed");
+	});
+	
+	$(".ontology .ontologySubmitHeader").click(function () {
+	  $(this).parents("div").toggleClass("collapsed");
+	}); 
+	
+	$('[name="propFeatFunc"]').click(function(){
+		propUtil.setFunctional($(this)[0].checked);
+	});
+	
+	$('[name="propFeatTrans"]').click(function(){
+		propUtil.setTransitive($(this)[0].checked);
+	});
+	
+	$('[name="propFeatSymm"]').click(function(){
+		propUtil.setSymmetric($(this)[0].checked);
+	});
+	
+	$('[name="propFeatInvFunc"]').click(function(){
+		propUtil.setInverseFunctional($(this)[0].checked);
+	});
+	
+</script>
+</...@common.page>
\ No newline at end of file

Propchange: incubator/stanbol/trunk/commons/web/ontology/src/main/resources/org/apache/stanbol/commons/web/ontologymanager/store/templates/org/apache/stanbol/ontologymanager/store/rest/resources/particularObjectProperty.ftl
------------------------------------------------------------------------------
    svn:executable = *

Added: incubator/stanbol/trunk/commons/web/ontology/src/main/resources/org/apache/stanbol/commons/web/ontologymanager/store/templates/org/apache/stanbol/ontologymanager/store/rest/resources/particularOntology.ftl
URL: http://svn.apache.org/viewvc/incubator/stanbol/trunk/commons/web/ontology/src/main/resources/org/apache/stanbol/commons/web/ontologymanager/store/templates/org/apache/stanbol/ontologymanager/store/rest/resources/particularOntology.ftl?rev=1089764&view=auto
==============================================================================
--- incubator/stanbol/trunk/commons/web/ontology/src/main/resources/org/apache/stanbol/commons/web/ontologymanager/store/templates/org/apache/stanbol/ontologymanager/store/rest/resources/particularOntology.ftl (added)
+++ incubator/stanbol/trunk/commons/web/ontology/src/main/resources/org/apache/stanbol/commons/web/ontologymanager/store/templates/org/apache/stanbol/ontologymanager/store/rest/resources/particularOntology.ftl Thu Apr  7 08:04:44 2011
@@ -0,0 +1,41 @@
+<#import "/imports/common.ftl" as common>
+
+<@common.page title="${it.metadata.URI}" hasrestapi=true>
+<div class="panel" id="webview">
+	<fieldset>
+		<legend><b>Resource Classification</b></legend>
+		<ul>
+			<li><a href="${it.metadata.href}/classes">Classes</a></li>
+			<li><a href="${it.metadata.href}/objectProperties">Object Properties</a></li>
+			<li><a href="${it.metadata.href}/datatypeProperties">Datatype Properties</a></li>
+			<li><a href="${it.metadata.href}/individuals">Individuals</a></li>
+		</ul>
+	</fieldset>
+</div>
+<div class="panel" id="restapi" style="display: none;">
+<h3>Getting OntologyMetaInformation</h3>
+<pre>
+curl -i -X GET -H "Accept:application/xml" http://localhost:8080/persistencestore/${it.metadata.href}
+</pre>
+<p>Response :</p>
+<pre>
+<script type="text/javascript">
+	function init(){};
+	document.write(getResponse("GET", "${it.metadata.href}"));
+</script>
+</pre>
+<h3>Getting RDF/XML Serialization of Ontology</h3>
+<pre>
+curl -i -X GET -H "Accept:application/rdf+xml" http://localhost:8080/persistencestore/${it.metadata.href}
+</pre>
+<h3>Deleting Ontology</h3>
+<pre>
+curl -i -X DELETE http://localhost:8080/persistencestore/${it.metadata.href}
+</pre>
+<p>Response :</p>
+<pre>
+HTTP/1.1 204 No Content
+Server: Jetty(6.1.x)
+</pre>
+</div>
+</...@common.page>

Propchange: incubator/stanbol/trunk/commons/web/ontology/src/main/resources/org/apache/stanbol/commons/web/ontologymanager/store/templates/org/apache/stanbol/ontologymanager/store/rest/resources/particularOntology.ftl
------------------------------------------------------------------------------
    svn:executable = *