Skip to content

Commit 1990920

Browse files
committed
Update structure data model
Fix some typos as well.
1 parent 9b6123b commit 1990920

1 file changed

Lines changed: 16 additions & 18 deletions

File tree

structure/structure-data-model.md

Lines changed: 16 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
1-
# The BioJava-structure data model
1+
# The BioJava-Structure Data Model
22

33
A biologically and chemically meaningful data representation of PDB/mmCIF.
44

5-
## The basics
5+
## The Basics
66

7-
BioJava at its core is a collection of file parsers and (in some cases) data models to represent frequently used biological data. The protein-structure modules represent macromolecular data in a way that should make it easy to work with. The representation is essentially independ of the underlying file format and the user can chose to work with either PDB or mmCIF files and still get an almost identical data representation. (There can be subtile differences between PDB and mmCIF data, for example the atom indices in a few entries are not 100% identical)
7+
BioJava at its core is a collection of file parsers and (in some cases) data models to represent frequently used biological data. The protein-structure modules represent macromolecular data in a way that should make it easy to work with. The representation is essentially independent of the underlying file format and the user can chose to work with either PDB or mmCIF files and still get an almost identical data representation. (There can be subtile differences between PDB and mmCIF data, for example the atom indices in a few entries are not 100% identical)
88

9-
## The main hierarchy
9+
## The Main Hierarchy
1010

1111
BioJava provides a flexible data structure for managing protein structural data. The
12-
[http://www.biojava.org/docs/api/org/biojava/nbio/structure/Structure.html Structure] class is the main container.
12+
[Structure](http://www.biojava.org/docs/api/org/biojava/nbio/structure/Structure.html) class is the main container.
1313

14-
A Structure has a hierarchy of sub-objects:
14+
A `Structure` has a hierarchy of sub-objects:
1515

1616
<pre>
1717
Structure
@@ -25,28 +25,27 @@ Structure
2525
Atom(s)
2626
</pre>
2727

28-
All structure objects contain one or more "models". That means also X-ray structures contain a "virtual" model which serves as a container for the chains. The most common way to access chains will be via
28+
All `Structure` objects contain one or more `Models`. That means also X-ray structures contain a "virtual" model which serves as a container for the chains. The most common way to access chains is via:
2929

3030
```java
3131
List <Chain> chains = structure.getChains();
3232
```
3333

34-
This works for both NMR and X-ray based structures and by default the first model is getting accessed.
34+
This works for both NMR and X-ray based structures and by default the first `Model` is getting accessed.
3535

36-
37-
## Working with atoms
36+
## Working with Atoms
3837

3938
Different ways are provided how to access the data contained in a [Structure](http://www.biojava.org/docs/api/org/biojava/nbio/structure/Structure.html).
40-
If you want to directly access an array of [Atoms](http://www.biojava.org/docs/api/org/biojava/nbio/structure/Atom.html) you can use the utility class called [StructureTools](http://www.biojava.org/docs/api/org/biojava/nbio/structure/StructureTools.html)
39+
If you want to directly access an array of representative [Atoms](http://www.biojava.org/docs/api/org/biojava/nbio/structure/Atom.html) (CA for proteins, P in nucleotides),you can use the utility class called [StructureTools](http://www.biojava.org/docs/api/org/biojava/nbio/structure/StructureTools.html)
4140

4241
```java
43-
// get all C-alpha atoms in the structure
44-
Atom[] caAtoms = StructureTools.getAtomCAArray(structure);
42+
// get all representative atoms in the structure, one for residue
43+
Atom[] caAtoms = StructureTools.getRepresentativeAtomArray(structure);
4544
```
4645

4746
Alternatively you can access atoms also by their parent-group.
4847

49-
## Loop over all the data
48+
## Loop over All the Data
5049

5150
Here an example that loops over the whole data model and prints out the HEM groups of hemoglobin:
5251

@@ -77,7 +76,7 @@ Here an example that loops over the whole data model and prints out the HEM grou
7776
}
7877
```
7978

80-
## Working with groups
79+
## Working with Groups
8180

8281
The [Group](http://www.biojava.org/docs/api/org/biojava/nbio/structure/Group.html) interface defines all methods common to a group of atoms. There are 3 types of Groups:
8382

@@ -98,7 +97,6 @@ In order to get all amino acids that have been observed in a PDB chain, you can
9897
}
9998
```
10099

101-
102100
In a similar way you can access all nucleotide groups by
103101
```java
104102
chain.getAtomGroups("nucleotide");
@@ -167,8 +165,8 @@ This prints all the compounds/entities in a structure
167165

168166
Navigation:
169167
[Home](../README.md)
170-
| [Book 3: The Protein Structure modules](README.md)
171-
| Chapter 3 : data model
168+
| [Book 3: The Structure modules](README.md)
169+
| Chapter 3 : Structure Data Model
172170

173171
Prev: [Chapter 2 : First Steps](firststeps.md)
174172

0 commit comments

Comments
 (0)