/usr/share/GNUstep/Documentation/GDL2Intro/EOAttribute-class.html is in gnustep-dl2 0.12.0-15.1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (C)
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
are preserved on all copies.
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided also that
the entire resulting derived work is distributed under the terms of a
permission notice identical to this one.
Permission is granted to copy and distribute translations of this manual
into another language, under the above conditions for modified versions. -->
<!-- Created by GNU Texinfo 6.3, http://www.gnu.org/software/texinfo/ -->
<head>
<title>GNUstep Database Library Introduction 0.1: EOAttribute class</title>
<meta name="description" content="GNUstep Database Library Introduction 0.1: EOAttribute class">
<meta name="keywords" content="GNUstep Database Library Introduction 0.1: EOAttribute class">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="Index.html#Index" rel="index" title="Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Classes.html#Classes" rel="up" title="Classes">
<link href="EORelationship-class.html#EORelationship-class" rel="next" title="EORelationship class">
<link href="EOEntity-class.html#EOEntity-class" rel="prev" title="EOEntity class">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
</head>
<body lang="en">
<a name="EOAttribute-class"></a>
<div class="header">
<p>
Next: <a href="EORelationship-class.html#EORelationship-class" accesskey="n" rel="next">EORelationship class</a>, Previous: <a href="EOEntity-class.html#EOEntity-class" accesskey="p" rel="prev">EOEntity class</a>, Up: <a href="Classes.html#Classes" accesskey="u" rel="up">Classes</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Index.html#Index" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<a name="EOAttribute-class-1"></a>
<h2 class="chapter">15 EOAttribute class</h2>
<a name="index-class_002c-EOAttribute"></a>
<a name="overview-2"></a>
<h3 class="section">15.1 overview</h3>
<p>An attribute typically maps a table column to an instance variable,
in which case the attribute is a class property. Some attributes
represent foreign keys which are used to create realationships yet do
not correspond to a property in the enterprise object. Other attributes
may represent primary keys which needn’t be class property either. In fact
some parts of framework work more smoothly if primary key attributes and
foreign key attributes are not class properties.
</p>
<p>Attributes typically contain:
</p><ol>
<li> A name
</li><li> A column name
</li><li> An adaptor value type
</li><li> An external type
</li><li> A value type
</li><li> A value class name
</li><li> A value factory method name
</li><li> a factory method argument type
</li></ol>
<p>Some additional properties an attribute may have:
</p><ol>
<li> Read only
</li><li> Allows null
</li><li> Width
</li><li> Precision
</li><li> Scale
</li></ol>
<a name="Name"></a>
<h3 class="section">15.2 Name</h3>
<p>The attributes name when the attribute is a class property is used
as the key when doing key value coding on an enterprise object.
</p>
<p>It also uniquely identifies the attribute in its entity
there many not be an attribute with the same name as another attribute or
relationship in an entity.
</p>
<a name="Column-name"></a>
<h3 class="section">15.3 Column name</h3>
<p>The adaptor uses the column name in generating SQL.
</p>
<a name="Adaptor-value-type"></a>
<h3 class="section">15.4 Adaptor value type</h3>
<p>Indicates the type of the attribute as contained in the database
</p>
<p>Valid adaptor value types are:
</p><ol>
<li> EOAdaptorNumberType
</li><li> EOAdaptorCharactersType
</li><li> EOAdaptorBytesType
</li><li> EOAdaptorDateType
</li></ol>
<p>Corresponding to numerical, string, raw data, and date value types.
</p>
<a name="External-type"></a>
<h3 class="section">15.5 External type</h3>
<p>An external type is a string representing an adaptor specific database type
different adaptors may use different names
where the PostgreSQL adaptor might use ’char’.
The SQLite3 Adaptor might use ’TEXT’
</p>
<p>it gives you full control on how the data is stored in the specific adaptor
where the adaptor value type allows you to specify a few generic values.
</p>
<a name="Value-type"></a>
<h3 class="section">15.6 Value type</h3>
<p>Value types are a string with a single character such as ’f’ for floats
’c’ for chars a full list of the standard types is available in the
GDL2 API reference for EOAttributes -valueType method.
</p>
<p>The value type allows you to further refine the adaptor value type
where EOAdaptorNumberType might represent a integer, float, or double type.
</p>
<a name="Value-class-name"></a>
<h3 class="section">15.7 Value class name</h3>
<p>The value class name specifies the class which will be present in an
Enterprise Object containing the attribute.
</p>
<p>A property of this class will be instantiated when a field is retrieved from
the database, similarly a instance of this will be converted into the
external type when being sent to the datbase server.
</p>
<a name="Value-factory-method-name"></a>
<h3 class="section">15.8 Value factory method name</h3>
<p>When the Value Class Name is a custom object for instance NSImage
created from a blob of data. The value factory method name denotes
the initializer for the class, used to create a new instance of the custom
class.
</p>
<p>The value class name is an NSString representing a selector accepting a single
argument suitable for passing to the NSSelectorFromString function.
</p>
<a name="Value-factory-argument-type"></a>
<h3 class="section">15.9 Value factory argument type</h3>
<p>This is the type of the argument sent to the value factory method name.
</p>
<p>Valid types are
</p><ol>
<li> EOFactoryMethodArgumentIsNSData
</li><li> EOFactoryMethodArgumentIsNSString
</li><li> EOFactoryMethodArgumentIsBytes
</li></ol>
<hr>
<div class="header">
<p>
Next: <a href="EORelationship-class.html#EORelationship-class" accesskey="n" rel="next">EORelationship class</a>, Previous: <a href="EOEntity-class.html#EOEntity-class" accesskey="p" rel="prev">EOEntity class</a>, Up: <a href="Classes.html#Classes" accesskey="u" rel="up">Classes</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Index.html#Index" title="Index" rel="index">Index</a>]</p>
</div>
</body>
</html>
|