You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stanbol.apache.org by bu...@apache.org on 2012/03/05 14:47:20 UTC

svn commit: r807427 - in /websites/staging/stanbol/trunk/content: ./ stanbol/docs/trunk/enhancer/enhancerrest.html stanbol/docs/trunk/enhancer/executionmetadata.html

Author: buildbot
Date: Mon Mar  5 13:47:19 2012
New Revision: 807427

Log:
Staging update by buildbot for stanbol

Modified:
    websites/staging/stanbol/trunk/content/   (props changed)
    websites/staging/stanbol/trunk/content/stanbol/docs/trunk/enhancer/enhancerrest.html
    websites/staging/stanbol/trunk/content/stanbol/docs/trunk/enhancer/executionmetadata.html

Propchange: websites/staging/stanbol/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Mon Mar  5 13:47:19 2012
@@ -1 +1 @@
-1297047
+1297053

Modified: websites/staging/stanbol/trunk/content/stanbol/docs/trunk/enhancer/enhancerrest.html
==============================================================================
--- websites/staging/stanbol/trunk/content/stanbol/docs/trunk/enhancer/enhancerrest.html (original)
+++ websites/staging/stanbol/trunk/content/stanbol/docs/trunk/enhancer/enhancerrest.html Mon Mar  5 13:47:19 2012
@@ -46,7 +46,7 @@
 <ul>
 <li><a href="/stanbol/docs/trunk/downloads.html">Overview</a></li>
 </ul>
-<h1 id="the_asf">The ASF</h1>
+<h1 id="the-asf">The ASF</h1>
 <ul>
 <li><a href="http://www.apache.org">Apache Software Foundation</a></li>
 <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
@@ -62,9 +62,10 @@
 <ul>
 <li><strong>'/enhancer':</strong> The main endpoint of the Stanbol Enhancer. Parsed content will get enhanced by using the default enhancement chain.</li>
 <li><strong>'/enhancer/chain/{chain-name}'</strong>: The Stanbol Enhancer supports the configuration of multiple <a href="chains">Enhancement Chains</a>. Users can lookup active chains by requests to the 'enhancer/chain' endpoint.</li>
+<li><strong>'/enhancer/engine/{engine-name}'</strong>: This can be used to enhance parsed Content with a single <a href="engines">Enhancement Engine</a>. Note that the parsed Content MUST be processable by the referenced engine. So if the engine is not able to directly process the parsed content you might need to send existing metadata such as explained in the section <a href="#parsing_multiple_contentparts">Parsing multiple ContentParts</a>. This feature is e.g. useful to directly send a MP3 file to the <a href="engines/tikaengine.html">TikaEnigne</a> to extract the metadata.</li>
 <li><strong>'/engines':</strong> Same as '/enhancer' this ensures backward compatibility to older Stanbol versions.</li>
 </ul>
-<h2 id="basic_enhancement_service">Basic Enhancement Service</h2>
+<h2 id="basic-enhancement-service">Basic Enhancement Service</h2>
 <p>This sections describes how to parse content to the Stanbol Enhancer which then gets analyzed. Results are sent back in the form of a serialized RDF graph.</p>
 <p>The content to analyze should be sent in a POST request with the mime-type specified in
 the <code>Content-type</code> header. The response will hold the RDF enhancement serialized in the format specified in the <code>Accept</code> header:</p>
@@ -85,7 +86,7 @@ text/rdf+nt (N-TRIPLES)
 </pre></div>
 
 
-<h3 id="additional_parameters">Additional Parameters</h3>
+<h3 id="additional-parameters">Additional Parameters</h3>
 <ul>
 <li><strong>uri={content-item-uri}:</strong> By default the URI of the content item being enhanced is a local, non de-referencable URI automatically built out of a hash digest of the binary content. Sometimes it might be helpful to provide the URI of the <a href="contentitem.html">ContentItem</a> to be used in the enhancements RDF graph.</li>
 <li><strong>executionmetadata=true/false:</strong> Allows the include of <a href="executionmetadata.html">execution metadata</a> in the enhancement metadata of the response. Such data include also the <a href="chains/executionplan.html">execution plan</a> used to enhance the parsed content. This information is typically only useful to clients that want to know how the parsed content was processed by the enhancer. NOTE that the execution metadata can also be requested by using the multi-part content item API described below.</li>
@@ -99,7 +100,62 @@ In addition this request is directed to 
 </pre></div>
 
 
-<h2 id="multi-part_contentitem_support">Multi-part ContentItem support</h2>
+<h2 id="enhancer-configuration">Enhancer Configuration</h2>
+<p>The Stanbol Enhancer supports several RESTful services to inspect the configuration. This services allow to retrieve currently active <a href="engines">Enhancement Engines</a> and <a href="chains">Enhancement Chains</a>.</p>
+<ul>
+<li><strong>'/enhancer':</strong> GET requests to the main Stanbol Enhancer endpoint the do used an 'Accept' header compatible to one of the supported RDF serializations will return the current configuration as RDF.</li>
+<li><strong>'/enhancer/engine':</strong> Same as above however the response will only include active enhancement engines</li>
+<li><strong>'/enhancer/chain':</strong> Returns the currently active enhancement chains.</li>
+<li><strong>'/enhancer/sparql':</strong> SPARQL endpoint that allows to query the configuration.</li>
+</ul>
+<p>Example Response as 'application/rdf' serialization of the default configuration of the Stanbol Enhancer.</p>
+<p>The request</p>
+<div class="codehilite"><pre>curl -v -X GET -H <span class="s2">&quot;Accept: application/rdf+xml&quot;</span> <span class="s2">&quot;http://localhost:8080/enhancer/ep&quot;</span>
+</pre></div>
+
+
+<p>returns the following results</p>
+<div class="codehilite"><pre><span class="nt">&lt;rdf:RDF</span>
+    <span class="na">xmlns:rdf=</span><span class="s">&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;</span>
+    <span class="na">xmlns:j.0=</span><span class="s">&quot;http://stanbol.apache.org/ontology/enhancer/enhancer#&quot;</span>
+    <span class="na">xmlns:rdfs=</span><span class="s">&quot;http://www.w3.org/2000/01/rdf-schema#&quot;</span> <span class="nt">&gt;</span> 
+  <span class="nt">&lt;rdf:Description</span> <span class="na">rdf:about=</span><span class="s">&quot;http://localhost:8080/enhancer/engine/langid&quot;</span><span class="nt">&gt;</span>
+    <span class="nt">&lt;rdfs:label&gt;</span>langid<span class="nt">&lt;/rdfs:label&gt;</span>
+    <span class="nt">&lt;rdf:type</span> <span class="na">rdf:resource=</span><span class="s">&quot;http://stanbol.apache.org/ontology/enhancer/enhancer#EnhancementEngine&quot;</span><span class="nt">/&gt;</span>
+  <span class="nt">&lt;/rdf:Description&gt;</span>
+  <span class="nt">&lt;rdf:Description</span> <span class="na">rdf:about=</span><span class="s">&quot;http://localhost:8080/enhancer&quot;</span><span class="nt">&gt;</span>
+    <span class="nt">&lt;rdf:type</span> <span class="na">rdf:resource=</span><span class="s">&quot;http://stanbol.apache.org/ontology/enhancer/enhancer#Enhancer&quot;</span><span class="nt">/&gt;</span>
+    <span class="nt">&lt;j.0:hasEngine</span> <span class="na">rdf:resource=</span><span class="s">&quot;http://localhost:8080/enhancer/engine/dbpediaLinking&quot;</span><span class="nt">/&gt;</span>
+    <span class="nt">&lt;j.0:hasEngine</span> <span class="na">rdf:resource=</span><span class="s">&quot;http://localhost:8080/enhancer/engine/langid&quot;</span><span class="nt">/&gt;</span>
+    <span class="nt">&lt;j.0:hasEngine</span> <span class="na">rdf:resource=</span><span class="s">&quot;http://localhost:8080/enhancer/engine/entityhubLinking&quot;</span><span class="nt">/&gt;</span>
+    <span class="nt">&lt;j.0:hasEngine</span> <span class="na">rdf:resource=</span><span class="s">&quot;http://localhost:8080/enhancer/engine/tika&quot;</span><span class="nt">/&gt;</span>
+    <span class="nt">&lt;j.0:hasEngine</span> <span class="na">rdf:resource=</span><span class="s">&quot;http://localhost:8080/enhancer/engine/metaxa&quot;</span><span class="nt">/&gt;</span>
+    <span class="nt">&lt;j.0:hasEngine</span> <span class="na">rdf:resource=</span><span class="s">&quot;http://localhost:8080/enhancer/engine/ner&quot;</span><span class="nt">/&gt;</span>
+    <span class="nt">&lt;j.0:hasChain</span> <span class="na">rdf:resource=</span><span class="s">&quot;http://localhost:8080/enhancer/chain/default&quot;</span><span class="nt">/&gt;</span>
+    <span class="nt">&lt;j.0:hasDefaultChain</span> <span class="na">rdf:resource=</span><span class="s">&quot;http://localhost:8080/enhancer/chain/default&quot;</span><span class="nt">/&gt;</span>
+    <span class="nt">&lt;j.0:hasChain</span> <span class="na">rdf:resource=</span><span class="s">&quot;http://localhost:8080/enhancer/chain/language&quot;</span><span class="nt">/&gt;</span>
+  <span class="nt">&lt;/rdf:Description&gt;</span>
+  <span class="nt">&lt;rdf:Description</span> <span class="na">rdf:about=</span><span class="s">&quot;http://localhost:8080/enhancer/chain/language&quot;</span><span class="nt">&gt;</span>
+    <span class="nt">&lt;rdfs:label&gt;</span>language<span class="nt">&lt;/rdfs:label&gt;</span>
+    <span class="nt">&lt;rdf:type</span> <span class="na">rdf:resource=</span><span class="s">&quot;http://stanbol.apache.org/ontology/enhancer/enhancer#EnhancementChain&quot;</span><span class="nt">/&gt;</span>
+  <span class="nt">&lt;/rdf:Description&gt;</span>
+  <span class="nt">&lt;rdf:Description</span> <span class="na">rdf:about=</span><span class="s">&quot;http://localhost:8080/enhancer/engine/ner&quot;</span><span class="nt">&gt;</span>
+    <span class="nt">&lt;rdf:type</span> <span class="na">rdf:resource=</span><span class="s">&quot;http://stanbol.apache.org/ontology/enhancer/enhancer#EnhancementEngine&quot;</span><span class="nt">/&gt;</span>
+    <span class="nt">&lt;rdfs:label&gt;</span>ner<span class="nt">&lt;/rdfs:label&gt;</span>
+  <span class="nt">&lt;/rdf:Description&gt;</span>
+[...]
+<span class="nt">&lt;/rdf:RDF&gt;</span>
+</pre></div>
+
+
+<h3 id="executionplan-of-enhancement-chains">Executionplan of Enhancement Chains</h3>
+<p>The <a href="chains/executionplan.html">ExecutionPlan</a> can be also requested by sending a GET request with an supported RDF serialization as 'Accept' header to</p>
+<ul>
+<li><strong>'/enhancer/ep'</strong></li>
+<li><strong>'/enhancer/chain/{chain-name}/ep'</strong></li>
+<li><strong>'/engines/ep'</strong></li>
+</ul>
+<h2 id="multi-part-contentitem-support">Multi-part ContentItem support</h2>
 <p>The multipart <code>ContentItem</code> extensions to the basic RESTful services are provided by the Stanbol Enhancer. It was introduced (by <a href="https://issues.apache.org/jira/browse/STANBOL-481">STANBOL-481</a>) to allow advanced usage scenarios. Users will want to use this extensions if they need to:</p>
 <ul>
 <li>parse multiple versions of the content: Most CMS already do have support for converting content to plain text. This API allows to parse both the original AND multiple transcoded versions of the content to the Enhancer.</li>
@@ -129,12 +185,12 @@ In addition this request is directed to 
 <p><strong>rdfFormat=[rdfMimeType]:</strong> This allows for requests that result in <code>multipart/form-data</code> encoded responses to specify the used RDF serialization format. Supported formats and defaults are the same as for normal Enhancer Requests. </p>
 </li>
 </ul>
-<h3 id="parsing_multiple_contentparts">Parsing multiple ContentParts</h3>
+<h3 id="parsing-multiple-contentparts">Parsing multiple ContentParts</h3>
 <p>Requests to the Stanbol Enhancer with the <code>Content-Type: multipart/form-data</code> are considered to contain a ContentItem serialized as MultiPart MIME. The exact specification of the <a href="contentitem.html#multipart_mime_serialization">MultiPart MIME format for ContentItems</a> is provided by the documentation of the ContentItem.</p>
 <p>The combination of <code>multipart/form-data</code> encoded requests with QueryParameters as described above allow for the usage of <a href="contentitem.html#multipart_mime_serialization">MultiPart MIME format for ContentItems</a> for both request and response.</p>
-<h2 id="using_the_multi-part_content_item_restful_api_extensions">Using the multi-part content item RESTful API extensions</h2>
+<h2 id="using-the-multi-part-content-item-restful-api-extensions">Using the multi-part content item RESTful API extensions</h2>
 <p>The following examples show typical usage scenarios of the multi-part content item RESTful API. Note that for better readability the values of the query parameters are not URL-encoded.</p>
-<h3 id="example_1_return_metadata_and_content">Example 1: Return metadata and content</h3>
+<h3 id="example-1-return-metadata-and-content">Example 1: Return metadata and content</h3>
 <p>The first example shows how users can request both the metadata and transcoded versions of the parsed content.
 This can be achieved relatively easy by using the "<code>outputContent=<em>/</em></code>" in combination with "<code>omitParsed=true</code>".</p>
 <div class="codehilite"><pre>curl -v -X POST -H <span class="s2">&quot;Accept: multipart/form-data&quot;</span> <span class="se">\</span>
@@ -174,7 +230,7 @@ The Stanbol enhancer can detect famous c
 
 
 <p>Se also the formal specification of the <a href="contentitem.html#multipart_mime_serialization">MultiPart MIME format for ContentItems</a> for ContentItems.</p>
-<h3 id="example_2_directly_return_the_plain_text_version_of_parsed_content">Example 2: Directly return the plain text version of parsed content</h3>
+<h3 id="example-2-directly-return-the-plain-text-version-of-parsed-content">Example 2: Directly return the plain text version of parsed content</h3>
 <p>The using the '<code>omitMetadata=true</code>' together with the "Accept: {requested-content-type}" the multi-part content API allows to directly request the transcoded version of the content with the format {requested-content-type}. </p>
 <div class="codehilite"><pre>curl -v -X POST -H &quot;Accept: text/plain&quot; \
     -H &quot;Content-type: text/html; charset=UTF-8&quot; \
@@ -191,7 +247,7 @@ The Stanbol enhancer can detect famous c
 
 <p>To make this work the requested <a href="chains">Enhancement Chain</a> will need to include an engine (e.g. <a href="engines/metaxaengine.html">Metaxa</a>) that supports transcoding the parsed content. If no content with the request type is available the request will answer with a "<code>404 NOT FOUND</code>". </p>
 <p>Note also that because the metadata are omitted by responses to such requests it is also recommended to configure/use a chain that does no further processing on the transcoded content. </p>
-<h3 id="example_3_parse_multiple_content_versions">Example 3: Parse multiple content versions</h3>
+<h3 id="example-3-parse-multiple-content-versions">Example 3: Parse multiple content versions</h3>
 <p>This example will use the "httpmime" part of the Apache commons httpcomponents to create the Multipart MIME sent to the Stanbol enhancer.</p>
 <div class="codehilite"><pre><span class="nt">&lt;dependency&gt;</span>
     <span class="nt">&lt;groupId&gt;</span>org.apache.httpcomponents<span class="nt">&lt;/groupId&gt;</span>
@@ -244,7 +300,7 @@ The Stanbol enhancer can detect famous c
 
 
 <p>Note that for such requests <a href="engines/metaxaengine.html">Metaxa</a> will still try to extract metadata of the parsed MS Word document, but all other engines will use the plain text version as parsed by the request for processing.</p>
-<h3 id="example_4_parse_existing_free_text_annotations">Example 4: Parse existing free text annotations</h3>
+<h3 id="example-4-parse-existing-free-text-annotations">Example 4: Parse existing free text annotations</h3>
 <p>This example shows how the multi-part content item API can be used to parse already existing tags for an parsed content to the Stanbol Enhancer. For this example it is important to understand that parsed metadata need to confirm to the Stanbol Enhancement Structure. Because of that this example consist of two main steps:</p>
 <ol>
 <li>Convert user tags to <code>TextAnnotation</code>s</li>

Modified: websites/staging/stanbol/trunk/content/stanbol/docs/trunk/enhancer/executionmetadata.html
==============================================================================
--- websites/staging/stanbol/trunk/content/stanbol/docs/trunk/enhancer/executionmetadata.html (original)
+++ websites/staging/stanbol/trunk/content/stanbol/docs/trunk/enhancer/executionmetadata.html Mon Mar  5 13:47:19 2012
@@ -46,7 +46,7 @@
 <ul>
 <li><a href="/stanbol/docs/trunk/downloads.html">Overview</a></li>
 </ul>
-<h1 id="the_asf">The ASF</h1>
+<h1 id="the-asf">The ASF</h1>
 <ul>
 <li><a href="http://www.apache.org">Apache Software Foundation</a></li>
 <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
@@ -57,17 +57,17 @@
   
   <div id="content">
     <h1 class="title">Execution Metadata</h1>
-    <p>The execution metadata holds detailed information about an ongoing/completed enhancement process. Basically they describe how the <a href="chains/executionplan.html">ExecutionPlan</a> provided by the <a href="chains">Chain</a> was executed by the <a href="enhancementjobmanager.html">EnhancementJobManager</a>. Both the ExecutionMetadata and the ExecutionPlan are provided with the ContentItem as an own content part of the type MGraph with the URI "http://stanbol.apache.org/ontology/enhancer/executionMetadata#ChainExecution". For users of the Stanbol Enhancer the Execution Metadata are of interest to:</p>
+    <p>The execution metadata holds detailed information about an ongoing/completed enhancement process. Basically they describe how the <a href="chains/executionplan.html">ExecutionPlan</a> provided by the <a href="chains">Chain</a> was executed by the <a href="enhancementjobmanager.html">EnhancementJobManager</a>. Both the ExecutionMetadata and the ExecutionPlan are provided with the ContentItem as an own content part of the type MGraph with the URI "http://stanbol.apache.org/ontology/enhancer/executionmetadata#ChainExecution". For users of the Stanbol Enhancer the Execution Metadata are of interest to:</p>
 <ul>
 <li>check progress of asynchronously started Enhancement Processes: Metadata for all planed executions of engines are created as soon as an ContentItem is parsed to the EnhancementJobManager and are updated as soon as the execution of engines start/complete/fail.</li>
 <li>Monitor the performance of different EnhancementEngines: The Execution Metadata provide detailed information about starting/completion time points for engine executions.</li>
 <li>Inspect the Enhancement Process: check if optional EnhancementEngines were successfully executed or skipped/failed; validate the configured EnhancementChain by checking the actual execution order of the EnhancementEngines.</li>
 </ul>
-<h2 id="execution_metadata_ontology">Execution Metadata Ontology</h2>
+<h2 id="execution-metadata-ontology">Execution Metadata Ontology</h2>
 <p>The RDFS schema used for the execution plan is defined as follows:</p>
 <p><img alt="Execution Metadata" src="executionmetadata.png" title="Overview of the Execution Metadata Ontology" /></p>
 <ul>
-<li>Namespace: em : http://stanbol.apache.org/ontology/enhancer/executionMetadata#</li>
+<li>Namespace: em : http://stanbol.apache.org/ontology/enhancer/executionmetadata#</li>
 <li><strong>em:Execution</strong> : Super class for all Executions<ul>
 <li><strong>em:executionPart</strong> (domain:Execution, range: em:ChainExecution): Defines that this execution was part of the execution of a chain</li>
 <li><strong>em:status</strong>(domain: em:Execution; range: em:ExecutionStatus): The status of an execution (used for both em:EngineExecution and em:ChainExecution</li>
@@ -184,9 +184,9 @@ urn:node5
 </pre></div>
 
 
-<h2 id="creationmanagement_of_execution_metadata">Creation/Management of Execution Metadata</h2>
+<h2 id="creationmanagement-of-execution-metadata">Creation/Management of Execution Metadata</h2>
 <p>This section is primarily intended for implementors of EnhancementJobManager. However it might also provide insights for users that want/need to monitor the state of enhancement processes as it describes what information are added when to the Execution Metadata.</p>
-<p>When the <a href="enhancementjobmanager.html">EnhancementJobManager</a> starts the Enhancement of a ContentItem it needs to check if the <a href="contentitem.html">ContentItem</a> already contains ExecutionMetadata in the ContentPart with the URI "http://stanbol.apache.org/ontology/enhancer/executionMetadata#ChainExecution". If this is the case it needs to initialize itself based on the pre-existing information. If no ExecutionMetadata are present, a new EnhancementProcess needs to be created based on the parsed Chain. Differences between this two cases are explained in the following two sub sections.</p>
+<p>When the <a href="enhancementjobmanager.html">EnhancementJobManager</a> starts the Enhancement of a ContentItem it needs to check if the <a href="contentitem.html">ContentItem</a> already contains ExecutionMetadata in the ContentPart with the URI "http://stanbol.apache.org/ontology/enhancer/executionmetadata#ChainExecution". If this is the case it needs to initialize itself based on the pre-existing information. If no ExecutionMetadata are present, a new EnhancementProcess needs to be created based on the parsed Chain. Differences between this two cases are explained in the following two sub sections.</p>
 <h3 id="initialization">Initialization</h3>
 <p>If no ExecutionMetadata are present within a parsed ContentItem, a new EnhancementProcess needs to be set up. This includes the following steps:</p>
 <ol>
@@ -196,7 +196,7 @@ urn:node5
 </ol>
 <p>The ExecutionMetadataHelper utility of the "org.apache.stanbol.enhancer.servicesapi" module contains utility methods for initializing execution metadata.</p>
 <h3 id="continuation">Continuation</h3>
-<p>If the parsed ContentItem does already contain ExecutionMetadata in the content part with the URI "http://stanbol.apache.org/ontology/enhancer/executionMetadata#ChainExecution" the EnhancementJobManager MUST follow the following steps to continue an EnhancementProcess.</p>
+<p>If the parsed ContentItem does already contain ExecutionMetadata in the content part with the URI "http://stanbol.apache.org/ontology/enhancer/executionmetadata#ChainExecution" the EnhancementJobManager MUST follow the following steps to continue an EnhancementProcess.</p>
 <ol>
 <li>Check if the contained ExecutionMetadata are valid<ul>
 <li>If a 'em:ChainExecution' node is present that 'em:enhances' the parsed ContentItem</li>
@@ -211,7 +211,7 @@ urn:node5
 </ol>
 <p>Note that with an continuation the ExecutionPlan MUST NOT be updated. It MUST BE also NOT checked if a Chain with the name as stored in the ExecutionMetadata is still present. Note also that configuration changes of EnhancementEngine will affect the continuation of the enhancement process.</p>
 <p>The ExecutionMetadataHelper utility of the "org.apache.stanbol.enhancer.servicesapi" module contains utility methods for reading and validating pre-existing execution metadata.</p>
-<h3 id="execution_state_management">Execution State Management</h3>
+<h3 id="execution-state-management">Execution State Management</h3>
 <p>The following metadata need to be updated by the EnhancementJobManager when:</p>
 <ul>
 <li>Enhancement process starts<ul>
@@ -258,10 +258,10 @@ urn:node5
 </li>
 </ul>
 <p>The ExecutionMetadataHelper utility of the "org.apache.stanbol.enhancer.servicesapi" module contains utility methods to preform state transitions on 'em:Execution' instances.</p>
-<h2 id="using_executionmetadata">Using ExecutionMetadata</h2>
+<h2 id="using-executionmetadata">Using ExecutionMetadata</h2>
 <p>This section provides some examples on how to access and retrieve information from the ExecutionMetadata.</p>
-<h3 id="accessing_executionmetadata">Accessing ExecutionMetadata</h3>
-<p>The ExecutionMetadata and the <a href="chains/executionplan.html">ExecutionPlan</a> are stored in a content part with with URI "http://stanbol.apache.org/ontology/enhancer/executionMetadata#ChainExecution" with the <a href="contentitem.html">ContentItem</a>. The following code segment can be used to retrieve the RDF graph with the ExecutionMetadata:</p>
+<h3 id="accessing-executionmetadata">Accessing ExecutionMetadata</h3>
+<p>The ExecutionMetadata and the <a href="chains/executionplan.html">ExecutionPlan</a> are stored in a content part with with URI "http://stanbol.apache.org/ontology/enhancer/executionmetadata#ChainExecution" with the <a href="contentitem.html">ContentItem</a>. The following code segment can be used to retrieve the RDF graph with the ExecutionMetadata:</p>
 <div class="codehilite"><pre><span class="n">ContentItem</span> <span class="n">ci</span><span class="o">;</span> <span class="c1">//the ContentItem</span>
 <span class="c1">//the URI is available as constant of the ExecutionMetadata class</span>
 <span class="n">UriRef</span> <span class="n">contentPartURI</span> <span class="o">=</span> <span class="n">ExecutionMetadata</span><span class="o">.</span><span class="na">CHAIN_EXECUTION</span><span class="o">;</span>
@@ -271,7 +271,7 @@ urn:node5
 
 
 <p>The ExecutionMetadata are stored as read-/writeable RDF graph. To parse a read-only version to other components one can use the "getGraph()" method defined by MGraph.</p>
-<h3 id="getting_details_about_the_emchainexecution">Getting details about the em:ChainExecution</h3>
+<h3 id="getting-details-about-the-emchainexecution">Getting details about the em:ChainExecution</h3>
 <p>The following code segments show how to access information about the execution of the enhancement process for a <a href="contentitem.html">ContentItem</a>. All directly accessed methods in the examples below are static imports from one of the following two utility classes part of the "org.apache.stanbol.enhancer.servicesapi" module.</p>
 <ul>
 <li>ExecutionPlanHelper: Utility class that provides methods for reading and creating <a href="chains/executionplan.html">ExecutionPlan</a>.</li>