This is an automated email from the ASF dual-hosted git repository.

rong pushed a commit to branch iotdb-1620
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit 7444084c9f6bafca8f4084a0bb42121023a915cb
Author: Steve Yurong Su <[email protected]>
AuthorDate: Wed Oct 6 09:55:49 2021 +0800

    english docs
---
 .../Data-Concept/Data-Model-and-Terminology.md     | 58 +++++++++++-----------
 1 file changed, 29 insertions(+), 29 deletions(-)

diff --git a/docs/UserGuide/Data-Concept/Data-Model-and-Terminology.md 
b/docs/UserGuide/Data-Concept/Data-Model-and-Terminology.md
index 96ca3fe..eb66047 100644
--- a/docs/UserGuide/Data-Concept/Data-Model-and-Terminology.md
+++ b/docs/UserGuide/Data-Concept/Data-Model-and-Terminology.md
@@ -33,21 +33,21 @@ Here are the basic concepts of the model involved in IoTDB.
 
 ### Measurement, Entity, Storage Group, Path
 
-* Measurement (Also called field)
+#### Measurement (Also called field)
 
 **Univariable or multi-variable measurement**. It is information measured by a 
detection equipment in an actual scene, and can transform the sensed 
information into an electrical signal or other desired form of information 
output and send it to IoTDB.  In IoTDB, all data and paths stored are organized 
in units of measuements.
 
-* Sub-measurement
+#### Sub-measurement
 
 In multi-variable measurements, there are many sub-measurement. For example, 
GPS is a multi-variable measurements, including three sub-measurement: 
longitude, dimension and altitude. Multi-variable measurements are usually 
collected at the same time and share time series.
 
 The univariable measurement overlaps the sub-measurement name with the 
measurement name. For example, temperature is a univariable measurement.
 
-* Entity (Also called device)
+#### Entity (Also called device)
 
 **An entity** is an equipped with measurements in real scenarios. In IoTDB, 
all measurements should have their corresponding entities.
 
-* Storage Group
+#### Storage Group
 
 **A group of entities.** Users can set any prefix path as a storage group. 
Provided that there are four timeseries `root.ln.wf01.wt01.status`, 
`root.ln.wf01.wt01.temperature`, `root.ln.wf02.wt02.hardware`, 
`root.ln.wf02.wt02.status`, two devices `wt01`, `wt02` under the path `root.ln` 
may belong to the same owner or the same manufacturer, so d1 and d2 are closely 
related. At this point, the prefix path root.vehicle can be designated as a 
storage group, which will enable IoTDB to store al [...]
 
@@ -61,38 +61,40 @@ After a storage group is set, the ancestral layers, 
children and descendant laye
 
 The Layer Name of storage group can only consist of characters, numbers, 
underscores and hyphen, like `root.storagegroup_1-sg1`.
 
-* Path
+#### Path
 
-In IoTDB, a path is an expression that conforms to the following constraints:
+A `path` is an expression that conforms to the following constraints:
 
 ```
-path: LayerName (DOT LayerName)+
-LayerName: Identifier | STAR
+path       : layer_name ('.' layer_name)*
+           ;
+layer_name : identifier 
+           | ('*' | '**')
+           ;
 ```
 
-Among them, STAR is `*` or `**` and DOT is `.`.
+We call the part of a path divided by `'.'` as a layer (`layer_name`). For 
example: `root.a.b.c` is a path with 4 layers.
 
-We call the middle part of a path between two "." as a layer, and thus 
`root.A.B.C` is a path with four layers. 
+The following are the constraints on the layer (`layer_name`):
 
-It is worth noting that in the path, root is a reserved character, which is 
only allowed to appear at the beginning of the time series mentioned below. If 
root appears in other layers, it cannot be parsed and an error is reported.
+* `root` is a reserved character, and it is only allowed to appear at the 
beginning layer of the time series mentioned below. If `root` appears in other 
layers, it cannot be parsed and an error will be reported.
 
-Single quotes are not allowed in the path. If you want to use special 
characters such as "." in LayerName, use double quotes. For example, 
`root.sg."d.1"."s.1"`. 
+* Except for the beginning layer (`root`) of the time series, the characters 
supported in other layers are as follows:
 
-The characters supported in LayerName without double quotes are as below:
+  * Chinese characters:  `"\u2E80"` to `"\u9FFF"`
+  * `"+", "&", "%", "$", "#", "@", "/", "_", "-", ":"`
+  * `"A"` to `"Z"`, `"a"` to `"z"`, `"0"` to `"9"`
 
-* Chinese characters '\u2E80' to '\u9FFF'
-* '+', '&', '%', '$', '#', '@', '/', '_', '-', ':'
-* 'A' to 'Z', 'a' to 'z', '0' to '9'
-* '[', ']' (eg. 's[1', 's[1]', s[ab]')
+  Among them, `'-'` and `':'` cannot be the first character, and  `'+'` cannot 
be used alone.
 
-'-' and ':' cannot be the first character. '+' cannot use alone.
+* In addition to the beginning layer (`root`) of the time series and the 
storage group layer, other layers also support the use of special strings 
referenced by \` or `" ` as its name. It should be noted that the quoted string 
cannot contain `.` characters. Here are some legal examples:
 
-> Note: the LayerName of storage group can only be characters, numbers, 
underscores and hyphen. 
->
-> Besides, if deploy on Windows system, the LayerName is case-insensitive, 
which means it's not allowed to set storage groups `root.ln` and `root.LN` at 
the same time.
+  * root.sg."select".""""."\$", which contains 5 layers: root, sg, select, "", 
\$
+  * root.sg.\`\`\`\`.\`from\`.\`\$\`, which contains 5 layers: root, sg, \`\`, 
from, \$
 
+* In particular, if the system is deployed on a Windows machine, the storage 
group layer name will be case-insensitive. For example, creating both `root.ln` 
and `root.LN` at the same time is not allowed.
 
-* Path Pattern
+#### Path Pattern
 
 In order to make it easier and faster to express multiple timeseries paths, 
IoTDB provides users with the path pattern. Users can construct a path pattern 
by using wildcard `*` and `**`. Wildcard can appear in any layer of the path. 
 
@@ -105,18 +107,17 @@ In order to make it easier and faster to express multiple 
timeseries paths, IoTD
 
 ### Timeseries
 
-* Data point
+#### Data point
 
 **A "time-value" pair**.
 
-* Timeseries (A measurement of an entity corresponds to a timeseries. Also 
called meter, timeline, and tag, parameter in real time database)
+#### Timeseries (A measurement of an entity corresponds to a timeseries. Also 
called meter, timeline, and tag, parameter in real time database)
 
 **The record of a measurement of an entity on the time axis.** Timeseries is a 
series of data points.
 
 For example, if entity wt01 in power plant wf01 of power group ln has a 
measurement named status, its timeseries  can be expressed as: 
`root.ln.wf01.wt01.status`.
 
-
-* Multi-variable timeseries (Also called aligned timeseries, from v0.13)
+#### Multi-variable timeseries (Also called aligned timeseries, from v0.13)
 
 A multi-variable measurements of an entity corresponds to a multi-variable 
timeseries. These timeseries are called **multi-variable timeseries**, also 
called **aligned timeseries**.
 
@@ -128,7 +129,7 @@ By using multi-variable timeseries, the timestamp columns 
of a group of multi-va
 
 In the following chapters of data definition language, data operation language 
and Java Native Interface, various operations related to multi-variable 
timeseries will be introduced one by one.
 
-* Timestamp
+#### Timestamp
 
 The timestamp is the time point at which data is produced. It includes 
absolute timestamps and relative timestamps. For detailed description, please 
go to Data Type doc.
 
@@ -136,8 +137,7 @@ The timestamp is the time point at which data is produced. 
It includes absolute
 
 ### Measurement Template
 
-
-* Measurement template (From v0.13)
+#### Measurement template (From v0.13)
 
 In the actual scenario, many entities collect the same measurements, that is, 
they have the same measurements name and type. A **measurement template** can 
be declared to define the collectable measurements set. Measurement template 
helps save memory by implementing schema sharing. For detailed description, 
please refer to Measurement Template doc.
 

Reply via email to