sis-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From desruisse...@apache.org
Subject svn commit: r1814384 - in /sis/site/trunk/book: README.txt en/overview/DataAccess.html fr/overview/DataAccess.html
Date Sun, 05 Nov 2017 23:26:48 GMT
Author: desruisseaux
Date: Sun Nov  5 23:26:48 2017
New Revision: 1814384

URL: http://svn.apache.org/viewvc?rev=1814384&view=rev
Log:
Translate the "data access" introduction from French to English.

Modified:
    sis/site/trunk/book/README.txt
    sis/site/trunk/book/en/overview/DataAccess.html
    sis/site/trunk/book/fr/overview/DataAccess.html

Modified: sis/site/trunk/book/README.txt
URL: http://svn.apache.org/viewvc/sis/site/trunk/book/README.txt?rev=1814384&r1=1814383&r2=1814384&view=diff
==============================================================================
--- sis/site/trunk/book/README.txt [UTF-8] (original)
+++ sis/site/trunk/book/README.txt [UTF-8] Sun Nov  5 23:26:48 2017
@@ -1,3 +1,18 @@
 This directory contains the source files for the developer guide in HTML5 format.
 Those files are assembled into a single file in the ../content/book directory by
 the 'org.apache.sis.internal.book.Assembler' class in 'sis-build-helper' module.
+
+Assuming the following directory structure:
+
+(any directory)
+  ├─ trunk
+  └─ site
+      ├─ book
+      └─ content
+
+Then the command can be used as below on Unix systems:
+
+cd site
+java -classpath ../trunk/core/sis-build-helper/target/classes org.apache.sis.internal.book.Assembler
en
+
+Replace "en" by "fr" for generating the French version.

Modified: sis/site/trunk/book/en/overview/DataAccess.html
URL: http://svn.apache.org/viewvc/sis/site/trunk/book/en/overview/DataAccess.html?rev=1814384&r1=1814383&r2=1814384&view=diff
==============================================================================
--- sis/site/trunk/book/en/overview/DataAccess.html (original)
+++ sis/site/trunk/book/en/overview/DataAccess.html Sun Nov  5 23:26:48 2017
@@ -36,8 +36,78 @@
         <h1 id="DataAccess">Geospatial data access</h1>
       </header>
       <p>
-        <span style="color: red">TODO</span>
+        It is possible to instantiate data structures programmatically in memory.
+        But more often, data are read from files or other kinds of data stores.
+        There is different ways to access those data, but an easy way is to use
+        the <code class="sis">DataStores.open(Object)</code> convenience method.
+        The method argument can be a path to a data file
+        (<code>File</code>, <code>Path</code>, <code>URL</code>,
<code>URI</code>), a stream
+        (<code>Channel</code>, <code>DataInput</code>, <code>InputStream</code>,
<code>Reader</code>),
+        a connection to a data base (<code>DataSource</code>, <code>Connection</code>)
+        or other kinds of object specific to the data source.
+        The <code class="sis">DataStores.open(Object)</code> method detects data
formats
+        and returns a <code>DataStore</code> instance for that format.
       </p>
+      <p>
+        <code>DataStore</code> functionalities depend on the kind of data (coverage,
feature set, time series, <i>etc.</i>).
+        But in any cases, there is always some metadata that can be obtained.
+        Metadata allows to identify the phenomenon or features described by the data
+        (temperature, land occupation, <i>etc.</i>),
+        the geographic area or temporal period covered by the data, together with their resolution.
+        Some rich data source provides also a data quality estimation,
+        contact information for the responsible person or organization,
+        legal or technical constraints on data usage,
+        the history of processing apply on the data,
+        expected updates schedule, <i>etc.</i>
+      </p>
+      <p>
+        Various data formats have their own metadata model, but Apache <abbr>SIS</abbr>
translates all of them
+        in a unique metadata model in order to hide this heterogeneity.
+        This approach — to select a single metadata model as the <em>pivot
model</em> — is often used by other libraries.
+        For example Apache Tika uses <cite>Dublin Core</cite> as the pivot metadata
model,
+        while Java Image I/O defines its own standard metadata model in its <code>javax.imageio.metadata</code>
package.
+        For Apache <abbr>SIS</abbr>, the chosen pivot model is the <cite><abbr>ISO</abbr>
19115-1:2014 — Fundamentals</cite>
+        international standard, completed by <cite><abbr>ISO</abbr> 19115-2
— Extensions for imagery and gridded data</cite>.
+        This model organizes metadata in a tree structure where each information is accessible
by a well-defined path,
+        regardless the origin of that information.
+        For example if a data format can provides a geographic bounding box encompassing
all data,
+        then that information will always be accessible (regardless the data format) from
the root <code>Metadata</code> object
+        under the <code class="OGC">identificationInfo</code> node, <code
class="OGC">extent</code> sub-node,
+        <code class="OGC">geographicElement</code> sub-node.
+      </p>
+      <div class="example"><p><b>Example:</b>
+          following code read a metadata file from a Landsat-8 image and prints the declared
geographic bounding box:
+        </p>
+
+<pre><code>try (DataStore ds = DataStores.open(new File("LC81230522014071LGN00_MTL.txt")))
{
+    Metadata md = ds.getMetadata();
+
+    // In order to make this example simpler, null values and empty collection checks are
omited.
+    Identification   idInfo = md    .getIdentificationInfo().iterator().next();
+    Extent           extent = idInfo.getExtents()           .iterator().next();
+    GeographicExtent bbox   = extent.getGeographicElements().iterator().next();
+
+    System.out.println("The geographic bounding box is:");
+    System.out.println(bbox);
+}</code></pre>
+
+        <p>
+          This example produces the following output (this area is located in Vietnam):
+        </p>
+
+<pre><samp>The geographic bounding box is:
+Geographic Bounding Box
+  ├─West bound longitude……………………………
108°20′10,464″E
+  ├─East bound longitude……………………………
110°26′39,66″E
+  ├─South bound latitude……………………………
10°29′59,604″N
+  └─North bound latitude……………………………
12°37′25,716″N</samp></pre>
+
+        <p>
+          The Java code in this example extracts metadata elements by Java method invocations
like <code class="GeoAPI">getExtents()</code>,
+          but the next chapters will introduce another way using paths given as character
strings.
+          That later approach is more convenient when the methods to invoke are not known
at compile-time.
+        </p>
+      </div>
 
       <p>
         The <abbr>ISO</abbr> 19115 standard defines hundreds of elements.

Modified: sis/site/trunk/book/fr/overview/DataAccess.html
URL: http://svn.apache.org/viewvc/sis/site/trunk/book/fr/overview/DataAccess.html?rev=1814384&r1=1814383&r2=1814384&view=diff
==============================================================================
--- sis/site/trunk/book/fr/overview/DataAccess.html (original)
+++ sis/site/trunk/book/fr/overview/DataAccess.html Sun Nov  5 23:26:48 2017
@@ -36,17 +36,17 @@
         <h1 id="DataAccess">Accès aux données géospatiales</h1>
       </header>
       <p>
-        Bien qu’il soit possible de créer des structures de données directement
en mémoire,
+        Bien qu’il soit possible de créer des structures de données programmatiquement
en mémoire,
         le plus souvent les données sont lues à partir de fichiers ou autres types
d’entrepôts.
         Il y a plusieurs moyens d’accéder à ces données, mais une façon
pratique est d’utiliser
-        la méthode de commodité <code>DataStores.open(Object)</code>.
+        la méthode de commodité <code class="sis">DataStores.open(Object)</code>.
         L’argument donné à cette méthode peut être un chemin vers un fichier
         (<code>File</code>, <code>Path</code>, <code>URL</code>,
<code>URI</code>),
         un flux d’entrée vers un fichier déjà ouvert
         (<code>Channel</code>, <code>DataInput</code>, <code>InputStream</code>,
<code>Reader</code>),
         une connexion à une base de données (<code>DataSource</code>, <code>Connection</code>)
         ou d’autres types d’objets spécifiques à la source de données.
-        La méthode <code>DataStores.open(Object)</code> se charge de détecter
le format de données
+        La méthode <code class="sis">DataStores.open(Object)</code> se charge
de détecter le format de données
         et retourne une instance de <code>DataStore</code> pouvant le lire.
       </p>
       <p>
@@ -59,10 +59,10 @@
         Certains sources suffisamment riches fournissent aussi une estimation de la qualité
des données,
         des informations permettant de contacter la personne ou l’organisme responsable
des données,
         les contraintes légales ou techniques à l’utilisation, l’historique
des traitements,
-        les dates prévues des prochaines mise-à-jour de mises-à-jour, <i>etc.</i>
+        les dates prévues des prochaines mises-à-jour, <i>etc.</i>
       </p>
       <p>
-        Les différents formats de données ont souvent leur propre modèle de méta-données,
+        Les différents formats de données ont souvent leurs propres modèles de méta-données,
         mais Apache <abbr>SIS</abbr> les traduit tous vers un modèle unique
afin de cacher cette hétérogénéité.
         Cette approche, consistant à choisir un seul modèle de méta-données comme
<em>modèle pivot</em>, est fréquemment utilisée par d’autres bibliothèques
aussi.
         Par exemple Apache Tika utilise le standard <cite>Dublin Core</cite>
comme modèle pivot,
@@ -74,14 +74,15 @@
         peu importe l’origine de cette information.
         Par exemple si un format de données peut nous fournir les coordonnées géographiques
d’une boîte englobant toutes les données,
         alors cette information sera toujours accessible (peu importe le format de données)
à partir de l’objet <code>Metadata</code>
-        sous le noeud <code>identificationInfo</code>, sous-noeud <code>extent</code>,
sous-noeud <code>geographicElement</code>.
+        sous le noeud <code class="OGC">identificationInfo</code>, sous-noeud
<code class="OGC">extent</code>,
+        sous-noeud <code class="OGC">geographicElement</code>.
       </p>
       <div class="example"><p><b>Exemple:</b>
           le code suivant lit un fichier de méta-données d’une image Landsat-8
et affiche les limites géographiques qui y sont déclarées:
         </p>
 
 <pre><code>try (DataStore ds = DataStores.open(new File("LC81230522014071LGN00_MTL.txt")))
{
-    Metadata md = getMetadata();
+    Metadata md = ds.getMetadata();
 
     // Afin de simplifier cet exemple, nous omettons les vérifications de valeurs nulles
ou de collections vides.
     Identification   idInfo = md    .getIdentificationInfo().iterator().next();
@@ -106,7 +107,7 @@ Geographic Bounding Box
         <p>
           Le code Java dans cet exemple extrait des éléments de méta-données
par des appels à des méthodes Java telles que <code class="GeoAPI">getExtents()</code>,
           mais les chapitres suivants introduiront d’autres façons utilisant des
identifiants sous forme de chaînes de caractères.
-          Ces approches alternatives sont plus pratiques lorsque l’on ne connaît
pas à l’avance les méthodes à appeler.
+          Ces approches alternatives sont plus pratiques lorsque l’on ne connaît
pas au moment de la compilation quelles méthodes appeler.
         </p>
       </div>
 



Mime
View raw message