第四讲 实体的定义和使用
实体-它们是什么以及如何使用它们

实体: 它们是什么以及如何使用它们在开始之前,我要提醒大家,这篇教程是面向已理解了PAWN的概念但实际编程还不能得心应手的中级开发人员,初学者可能对本教程难以理解,而高手则应该已经掌握了相关的知识.实体基本上就是我们在游戏中能改变的所有东西,地图不是一个实体-它是不可能被改变的.你可以对它做一些事情,例如喷图,但不能从本质上改变它,只是在你喷图的地方简单地换了一个贴图材质.灯光,玩家,炸弹,武器(当它在地面时,在某些MOD中甚至是拿在手中时)和可打破的玻璃就是所有的实体种类.但是对实体来说最重要的是,正如上面所说的,它们可以被改变.这意味着你能改变游戏方式或者使游戏看起来完全不同关于实体我们要学习的一个最基本的事情就是怎样生成一个实体.通过学习本教程,你将学会通过engine和fakemeta两种方式来做这件事.下面就是一个实例:Code:Code:现在我们看到什么我还没解释的东西吗? 什么是"classname"? classname (类名称)被赋与所有的实体以便游戏引擎了解这个实体到底是什么. 假设我们现在停止阅读,走出门去,看看平常的事物,路过的一个人就可以看做classname为"human"的实体(虽然玩家在游戏中的classname是"player"), 一棵树可能classname 为"tree", 一辆车可能classname是"func_car" (前面有一个func_ 是因为它是一个有用途的实体或者它有服务于一个特定的目的) 一辆车的类型名也可能为"monster_cat" (前面有monster_ 是因为它是一个NPC ). 类型名有什么用处呢? 我们可以使用它来完成游戏的一些功能(如果你把一个实体的类型名设为"hostage_entity" 那么Counter-Strike 会自动认为它是一个人质) 或者我们可以通过类型名来从很多对象中来寻找实体(使用find_ent_by_class 函数或类似的函数)一个实体还具有一些属性值.这些属性值, 类似生命值, 目标, 目标名称, 重力值, 移动类型,等等. 都定义在HLSDK 中称为"edict_t" 的结构里. 因此一个edict是实体的重要基础部分.如果你有任何AMXX编程的经验, 你有可能使用了函数set_user_health. 也许你不明白它到底做了什么, 但确实有效. 实际上它做的就是找到这个玩家的edict_t 结构并改变属性"health" 的值(一个浮点数值而非整数值)为你想设定的值. 让我们看看它是如何完成这一过程的. 举个例子,我们设置一个玩家的生命值为200.使用fun模块的话, 程序看起来象这样:Code:而使用engine/fakemeta模块, 它看起来象这样:Code:显然这种方法更为强大,但是它比简单的使用"set_user_x"(x可能是重力,目标名称,或者其它类似的东西)之类的函数更让人迷惑,使用"set_user_x"系列函数我们可以很容易的存取整个edict_t 结构(实际上是连接到entvars 结构, 它才是所有信息真正存放的地方).那"entity_set_float"函数怎样呢? engine有12个这样的函数来操作一个实体的entvars 结构:entity_get_intentity_get_floatentity_get_stringentity_get_vectorentity_get_edictentity_get_byteentity_set_intentity_set_floatentity_set_stringentity_set_vectorentity_set_edictentity_set_byte另外还有其它的一些函数也做类似的工作:entity_set_originentity_set_modelentity_set_size注意使用entity_set_vector/string是不一样的, 因为它们通知engine (不是模块) 它们所做的改变.在fakemeta模块里有类似的函数,然而只有两个:Pevset_pev因为只有两个函数,所以我们使用fakemeta时要更加小心,因为我们有可能在pev函数需要一个整数的时候却传送了一个浮点数或者犯类似的错误.还有一些函数可以通过engfunc和dllfunc执行(位于和new Ent = engfunc... 相邻的地方).那么,到现在为止,我们应该怎样来写程序呢?我们已经学习了如何不使用fun而是使用engine 和fakemeta来完成工作,但是对于实体我们还有什么可以做的吗?好的,假设我们要传送一个玩家到地图上的一个点.首先我们要明白将要传送到的地址是一个vector. vector 是一个含3个元素的数组,通常为x,y,z三个坐标的值.我们也必须了解所有的vectors 都是浮点值,下面是一个vector的例子:Code:这和设置玩家的位置有什么关系呢?我们首先必须找到如何设置实体的位置的方法.查询了funcwiki后我们找到了以下的方法:entity_set_origin接下来我们要找到我们想把玩家传送到哪个位置.假设我们想把玩家传送到50,-30,1000这个位置. 首先我们要把这个坐标转换为一个vector:Code:接着设置它们的位置.当生成一个实体时,最重要的事情之一就是设置它的所有者. 举个例子,一个玩家在控制台输入"car" 生成一辆车在他面前, 如果要那辆车只能由他自己使用,只需要设置车的所有者并在实体在被使用时检查是否是生成它的玩家在使用. 下面是个实例:Code:Code:在这些例子中,我们接触到了一些前面没有学习的东西. 如- solidity(特性). 当我们把手放入水中时不会受到阻挡,但是如果我们用手指指向最靠近的人,一旦我们接触到他们我们的手指将停下.这些特性是由HL 引擎通过solidity 属性设置的. 一共有5种solid 类型, 在这里你可以找到所有的这些特性: /funcwiki.php?...=3#const_solid在上面的例子中我们使用的是SOLID_TRIGGER, 因为我们想让玩家在触碰到车时产生一个touch事件(虽然它还会在BBOX 或BSP中触发).另一个我们还没有讲的概念是entity_set_size / engfunc(EngFunc_SetSize..., 使用它们可以让你设置实体的尺寸. 这个相当重要,因为没有它们实体的solidity 属性将没有用处. 如果实体的尺寸在x,y,z坐标上是0个单位, 那么它们属性就是SOLID_NOT, 即使是在我们把它设置为SOLID_BSP/_BBOX的情况下. 无论实体的模型有多在,实体的size才是真正起作用的东西.已经太长了,我将在这里打住.如果你有什么问题或建议,请发贴子.附加信息:这里是当前engine(模块)的entvar 类型列表:/funcwiki.php?...#const_ent_int这里是当前fakemeta(模块)的entvar 类型列表:/funcwiki.php?go=module&id=16Entities: what they are and how to use themBefore we begin, please be aware that this tutorial is aimed toward scripters of intermediate level that understand Pawn conceptually but are still sketchy when it comes to implementation. Beginners may get confused, and experts may find they already know all this.An entity is basically anything in the game that can change. The map is not an entity - it is impossible to change. You can do something like put a spraypaint on it, but that's not changing the map per se; rather it simply paints another texture on the location you sprayed.Lights, players, the bomb, weapons (when on the ground, or even while being held in some mods) and breakable glass are all examples of entities. But what is important about ent(ities -- from now on they will be abbreviated to 'ents')? As said above, they can change. This means you can modify gameplay or make the game look different with them.One of the most basic things that must be learned about entities is how to spawn one. Throughout this tutorial, I will post both an engine and fakemeta method of doing things, so here is one example:Code:Code:Now what do we see here that I haven't explained? What is this "classname"? A classname is given to all ents to help the engine determine what it is. If we stopped reading this tutorial and went outside, looking at various things, a person walking by might be classname "human" (however players in game are classname "player"), a tree might be classname "tree", a car might be "func_car" (func_ since it's a usable entity or it serves a purpose) and a cat might be "monster_cat" (monster_ because it's an NPC that may or may not be hostile). What can we do with the classname? We can use it to implement game functions (if you name an ent "hostage_entity" then Counter-Strike will automatically assume it's a hostage) or we can search for it(using find_ent_by_class or similar functions) among other things.An entity also has other values. These values, such as health, target, targetname, gravity, movetype, etc. are all defined in part of HLSDK called the "edict_t" structure. An edict is effectively the basis for an entity because of this.If you have any experience with AMXX scripting, you've probably ran into the function set_user_health. You may not understand what it does, but you know it works. What it basically does is go into the player's edict_t structure and change the "health" value (which is actually a float, not an int) to whatever you specify. Let's look at how it actually implements this though. Let's say for example we want to set a player's health to 200.In fun, it looks like this:Code:But in engine/fakemeta, it looks like this:Code:We obviously have more power this way. It looks much more confusing, but rather than simply making a "set_user_x" (where x is gravity, targetname, or what not) we have access to the entire edict_t structure (which links to the entvars structure, which is where all the information really is).But what about this "entity_set_float"? There are 12 functions when it comes to engine and manipulating the entvars of an ent:entity_get_intentity_get_floatentity_get_stringentity_get_vectorentity_get_edictentity_get_byteentity_set_intentity_set_floatentity_set_stringentity_set_vectorentity_set_edictentity_set_byteAdditionally, we have some other functions that do similar things:entity_set_originentity_set_modelentity_set_sizeNote that these are not the same as simply using entity_set_vector/string, as they actually notify the engine (not the module) of the changes.We have similar functions in fakemeta, however there are only 2 that do the same thing as these:pevset_pevBecause there is only 2, we have to be much more careful with fakemeta, since we could accidentally pass a float when the pev expects an int, or something to that effect.There are also other functions which can be executed through engfunc and dllfunc (as shown near the top with the new Ent = engfunc... bit).But now, how can these be implemented? We've already seen above how we can avoid fun and instead use engine/fakemeta, but what are some other things we can do with ents?Well, let's say we want to teleport a player to a spot on the map. The first thing we must understand about where we want to teleport them, is that the location will be a vector. Why? Because a vector is a 3 cell array that contain data that generally acts as an x,y,z axis. We must also understand that all vectors implemented with engine/fakemeta are floats. Here is an example of a vector:Code:Now, how is this relevant to setting a player's location? We must first look up howwe set the entity's origin. After looking through the funcwiki we come across this: entity_set_originSo what do we do? First, we find out where we want to teleport the player. Let's say we want to teleport them to 50,-30,1000. We must first convert this to a vector:Code:Then set their origin.Code:When creating an entity, one of the most important things is to set its owner. Say, for example, a player types "car" in their console which creates a car in front of them, that can only be used by them. This can be done by setting their owner, and then checking when the ent is used if the owner is the person using it. Here is an example:Code:Code:With these examples, we went into a few things that we haven't before. First of all - solidity. When we boil water and steam floats up from it, if we put our handsthrough they do not get stopped after they touch the first water droplet. If go poke the nearest person, our finger will get stopped once it makes contact with them. This can be represented through solidity in the HL engine. There are 5 different solid types, which can be found here: /funcwiki.php?...=3#const_solidThe one we used in this case was SOLID_TRIGGER, because we want the player to trigger a touch when they touch the car (even though it will still trigger on BBOX or BSP).Another concept we have yet to go over is entity_set_size / engfunc(EngFunc_SetSize..., which allows you to set the size of an entity. This is important because without it, the ent's solidity will not matter. If the entity is 0 units on the x,y,z axis, then it is by definition SOLID_NOT, even if we set it to SOLID_BSP/_BBOX. No matter how big the model is, it's the size that really matters.This is already way too long, so I'm going to end this here. If you have any questions about this or any way to improve upon it, feel free to post.Additional information:The list of current Engine (module) entvar types can be found here (and below it): /funcwiki.php?...#const_ent_intand the list of current Fakemeta entvars can be found here:/funcwiki.php?go=module&id=16。
第四章 实体的定义和使用

二,内部实体的定义和使用: 内部实体的定义和使用 在DTD中,定义内部实体的格式是: 中 定义内部实体的格式是: <!ENTITY entity_name "entity—content"> <!ENTITY表示该语句为定义实体的指令. 表示该语句为定义实体的指令. 表示该语句为定义实体的指令 是关键字, "ENTITY"是关键字,必须大写. 是关键字 必须大写. entity_name为要定义的实体的名字. 为要定义的实体的名字. 为要定义的实体的名字 entity—content为要定义实体的具体内容 为要定义实体的具体内容. 为要定义实体的具体内容 例如:<!ENTITY hello "How are you" > 例如 在文档中引用实体的语法为: 在文档中引用实体的语法为 & entity_name; 例如:& 例如 hello ; 参照例题15: 参照例题
实体,一 实体 一 . 实体, 实体
按照实体的存在形式分类,有如下两种实体 按照实体的存在形式分类,有如下两种实体:
内部实体:就是实体的内容已经包含在 内部实体:就是实体的内容已经包含在DTD文 实体的内容已经包含 文 件本身中;(只能在当前文档中引用). 件本身中;(只能在当前文档中引用). 只能在当前文档中引用 外部实体: 实体的内容是 外部实体:指实体的内容是DTD文件以外 文件以外 的其他独立的文件. 的其他独立的文件.在文档中必须通过 独立的文件 URL才能定位的 实体,(可以被多个文 才能定位的 实体, 档所引用). 档所引用).
请看下面的例子: 请看下面的例子:dtdFile.dtd: #define π 3.1415926 <!ENTITY hello "How are you" > <!ENTITY CCTV "中国 中国&<<& 中国 中央电视台" 中央电视台 > <!ENTITY CCTV5 "中国 中国&中央 中央&电 中国 中央 电 视台<体育频道 体育频道>" > 视台 体育频道 <!ELEMENT root ANY > <!ELEMENT speak ANY > <!ELEMENT hi (#PCDATA)>
实体的概念描述

实体的概念描述实体是存在于现实世界中的事物,可以是具体的物体、人或非具体的概念、现象、事件等。
实体具有独立的特征、属性和行为,并与其他实体相互作用、相互影响。
实体可以分为有机体和无机体。
有机体是指生物体,包括人类、动物和植物等。
无机体是指非生物体,包括自然界中的物质,如岩石、水、空气等,以及人工制品,如建筑物、交通工具等。
在生物领域中,生物个体是常见的实体类型。
一个生物个体可以是一个单细胞生物也可以是一个多细胞生物。
对于多细胞生物来说,它们的组织、器官和系统也是实体的组成部分。
例如,人类的身体是一个复杂的多细胞实体,由各种器官(如心脏、肺、肝脏)组成,而器官又由各种细胞组织构成。
每个细胞、组织和器官都具有自己的特征、属性和功能,它们相互协作,共同维持整个生物体的运行和生存。
在社会学、经济学和心理学等领域中,人类个体和群体也是重要的实体。
人类个体是指单个的人,并且每个人都具有自己的社会地位、角色和个性等特征。
群体则是指由多个人组成的社会单位,如家庭、组织、社区等。
人类个体和群体之间存在着复杂的相互关系和相互作用,例如人与人之间的合作、竞争和交流等。
除了生物个体和社会个体外,还有许多其他类型的实体。
概念是一种非具体的实体,它代表着一种思想、观念、信念或理论。
概念可以是抽象的(如自由、公正)或具体的(如生态系统、DNA)。
现象是指在观察和实验中可见的、感知的事件或现象。
现象可以是自然界中的现象(如日食、月亮的周期)或人类活动中的现象(如市场波动、社会运动)。
实体还可以是事件、行为或过程。
事件是指在一定时间和空间中发生的特定事情,如交通事故、音乐会等。
行为是指人类或其他生物的活动,如运动、思考、沟通等。
过程是指一系列相互关联的事件或行为的连续发展,如生物发育过程、工业生产过程等。
总之,实体是存在于现实世界中的各种事物,包括生物个体、社会个体、概念、现象、事件、行为和过程等。
它们具有独立的特征、属性和行为,并与其他实体相互作用、相互影响。
实体 的概念

实体的概念
实体是指存在于现实世界中、具有独立存在和自身特征的事物或个体。
在哲学、社会科学和信息学等领域中都对实体进行了深入的研究和讨论。
在哲学中,实体被认为是独立于我们的思维和感知存在的对象。
实体可以是物质的,如人、动物和自然物体,也可以是抽象的,如概念、道德规范和数学公式。
实体的存在是客观的,它们具有一定的属性、特征和关系,并通过相互作用和相互影响来发挥其作用。
实体对于人类的思维和知识具有重要意义,人们通过认识和研究实体来理解和解释世界的本质和运行机制。
在社会科学中,实体是指人类社会中的各种角色、组织、环境和制度。
这些实体按照一定的规则和制度相互作用和影响,形成了一个复杂的社会系统。
比如国家、政府、法律、市场和文化都是社会实体的例子。
这些实体具有自身的目标和动机,它们通过相互协作和竞争来达成共同的利益和目标。
在信息学中,实体是指计算机系统中的各种组件、对象和数据。
这些实体通过在计算机中的存储、处理和传输来实现各种功能和任务。
比如计算机程序可以以实体的形式表示,运行时可以通过实体之间的相互调用实现复杂的逻辑和功能。
实体之间的关系可以使用关系型数据库或者图数据库等技术进行建模和管理,实现数据的存取和查询。
实体的概念是多学科交叉的,不同领域对实体的定义和研究角度可能存在差异。
但无论是哲学、社会科学还是信息学,实体都是研究和理解世界的基础。
我们通过对实体的观察、实验和建模,可以揭示事物背后的规律和本质,促进人类的认知和技术进步。
因此,对实体的研究具有重要的理论和实践意义。
实体的名词解释

实体的名词解释实体(Entity)是指存在于现实世界中的具体事物或抽象概念,可以被称为对象、实例或个体。
实体是信息系统中数据建模的基本单位,它代表着现实世界中可独立辨识的事物。
在计算机科学、信息管理和知识工程等领域中,实体在数据建模、知识表示和语义查询等方面发挥着重要作用。
一、实体的基本特征实体具备以下基本特征:1. 独立性:实体可以作为一个整体被独立辨识和处理,与其他实体有一定的区别和界限。
2. 可辨识性:实体具备可以被唯一标识、识别和区分的特征。
3. 可存在性:实体在现实世界中存在,能够独立地接收和传递信息。
4. 属性:实体具备一定的特征、属性或状态,可用于描述和区分不同的实体。
二、实体的分类实体可以按照不同的维度进行分类,如物质实体和非物质实体、单实体和群体实体等。
1. 物质实体:物质实体是指在现实世界中具有物质形态的实体,例如人、动物、建筑物、自然景观等。
这些实体可以通过观察和感觉来直接感知。
2. 非物质实体:非物质实体是指无法以物质或物理形态存在的实体,包括抽象概念、信念、观念、知识等。
非物质实体无法直接感知,但可以通过符号、语言等方式进行表述和传播。
三、实体的建模和表示在信息系统和数据库设计中,实体的建模和表示是非常重要的环节。
常用的实体建模方法包括实体关系图(Entity-Relationship Diagram,简称ER图)和统一建模语言(Unified Modeling Language,简称UML),它们可以通过图形符号和关系表示实体及其属性之间的关联关系。
1. 实体关系图(ER图):ER图是一种图形化的工具,用于描述实体之间的联系。
通过使用矩形表示实体,使用菱形表示关系,使用箭头表示关系的方向和基数(表示实体之间的数量关系),可以清晰地表示实体和关系之间的结构。
2. 统一建模语言(UML):UML是一种用于软件系统建模的标准化模型语言,包括类图、对象图、活动图等多种图形表示方法。
简述实体的概念

简述实体的概念
实体本质、具体事物、个别主体、现象的支持者等意义,其含义一般是指能够独立存在的、作为一切属性的基础和万物本原的东西。
亚里士多德关于实体的基本思想;亚里士多德认为实体是独立存在的东西,是一切属性的承担者,从语言和逻辑上说它处于主词地位,其他表示数量、性质的范畴依附于实体,处于宾词的地位,只能用来说明主词。
他认为实体的主要特征是:它是“这个”而不是“如此”,是独立的,可以分离存在的;实体在保持自身不变的同时,允许“由于自身变化”而产生不同的性质,例如,同一个人可以有时健康,有时生病,但仍是这一个人;实体是变中不变的东西,是生成变化的基础。
对此,亚里士多德明确指出:“这是实体的最突出的标志”。
根据这些标准,亚里士多德认为个体,如这个人、这匹马,才是最真正的、第一性的、最确切意义而言的“实体”,它们是所有其他东西的基础和主体。
“人”、“动物”这些一般的“属”和“种”则是第二实体。
这体现了亚里士多德的唯物主义思想。
但是,亚里士多德在实体问题上,存在着矛盾和混乱。
在《形而上学》?第7卷中,他把个体分解为质料与形式的组合,认为质料、形式及二者组合的个体在某种意义上都叫实体,严格说来却只有形式,即本质才是实体,形式与质料组成的个体构成第二实体。
在《形而上学》第
12卷中,他又认为最高的实体是永恒不动的、无生无灭的,是万物运动的最后动因,即第一推动者──神。
entity实体的名词解释
entity实体的名词解释Entity(实体)是信息和知识表示中的一个重要概念。
在计算机领域,实体通常指代现实世界中的具体或抽象事物,可以是人、地点、组织、概念等。
实体具有独立的身份和属性,可以被识别和描述。
在数据库、人工智能和自然语言处理等领域中,实体的概念被广泛应用,对于信息的建模、表示和理解起着重要的作用。
一、实体的定义和特征实体作为知识的基本单位,可以通过一个唯一的标识符进行识别和标记。
例如,在关系型数据库中,实体可以用主键来唯一标识;在知识图谱中,实体可以用URI (统一资源标识符)来唯一标识。
实体也具有一定的属性,用于描述其特征和性质。
属性可以是数值型、文本型、日期型等不同类型。
例如,一个人的实体可以有姓名、年龄、性别等属性。
二、实体的关系网络实体之间存在着丰富的关系网络。
通过对实体之间关系的建模和表示,可以揭示出实体之间的内在联系和依赖。
在知识图谱等相关领域,实体和关系一起构成了一个复杂的网络结构,可以帮助进行知识推理和数据挖掘。
例如,在社交网络中,人与人之间的关注、好友关系等都构成了实体之间的关系网络,通过分析这些关系网络可以找出用户的兴趣爱好、社交影响力等信息。
三、实体的语义理解与实体链接实体的语义理解是指通过自然语言处理技术,将文本中的实体进行识别和链接。
实体链接的目标是将文本中提及的实体链接到知识库或数据库中的实体,从而进行语义的解析和推理。
例如,在文本中提及“Apple”,通过实体链接可以将其链接到苹果公司的实体上。
实体链接对于信息抽取、问答系统等任务至关重要,可以帮助提高系统的准确性和智能化程度。
四、实体的应用领域实体的概念和技术在各个领域都有广泛的应用。
在商业领域,实体可以用于描述产品、客户、供应商等,帮助进行市场分析和客户管理;在医疗领域,实体可以用于描述疾病、药品、病人等,支持临床决策和医学研究;在社交媒体中,实体可以用于描述用户、主题、事件等,帮助用户发现感兴趣的内容和人物。
实体概念
• 扫描特征是通过草绘或选取轨迹,然后沿 该轨迹草绘截面来创建的。用该功能通常 可以轻松的做出一些不规则的曲面
• 扫描混合可以具有两种轨迹:原点轨迹 (必需)和第二轨迹(可选)
5-基准平面构建
基准平面是任何三维软件不可少的特征,任何特征的构 建建都需要基准。可将基准平面作为参照用在尚未有基 准平面的零件中。例如,当没有其它合适的平面曲面时, 可以在基准平面上草绘或放置特征。本实体讲述proe基 准平面构建。
• 利用“孔”工具可向模型中添加简单孔、 定制孔和工业标准孔。通过定义放置参照、 设置偏移参照及定义孔的具体特性来添加 孔。
• “筋”特征是设计中连接到实体曲面的薄翼 或腹板伸出项。筋通常用来加固设计中的 零件,也常用来防止出现不需要的折弯。
拉伸是定义三维几何的一种方法,通过将二维 截面延伸到垂直于草绘平面的指定距离处来实 现。大部分产品当中80%上以的特征是拉伸, 由此可见拉伸特征的重可将“旋转”工具作为基本的创建方法之 一,它允许以实体或曲面的形式创建旋转 几何,以及添加或去除材料,旋转特征应 用于圆柱状的零件,如:杯子,水桶,酒 瓶等特征。
• 点,线,面是构建曲面三步曲,在几何建 模时可将基准点用作构造元素,或用作进 行计算和模型分析的已知点。可随时向模 型中添加点 - 即便在创建另一特征的过程中 也可执行此操作,本实例讲述proe基准点构 建。
• 自建坐标系是模具设计前预处理文件中常 用的命令,绘图中导入其它图档中的特征 时也会常用到自建坐标系,本实例讲述坐标 系构建。
【亚里士多德系列Ⅷ】什么是实体,又是如何定义的?
【亚里士多德系列Ⅷ】什么是实体,又是如何定义的?今天我们介绍亚里士多德的经典代表作:《形而上学》这本书,分享第三卷的内容,内容有点抽象,可以先点赞收藏起来,多看几次。
在这一卷中,亚里士多德提出了很多问题,其中重点讨论了事物本原的问题。
事物的本原是一个还是多个;是可毁灭的,还是永恒的;是在个别事物之内,还是在个别事物之外。
其中重点批判和否定了巴门尼德、毕达哥拉斯和柏拉图关于世界本原的学说。
我们分别来看看。
01知识是来自于思维首先,本原是存在于个别事物之外,还是个别事物之内呢?亚里士多德进行了批判性反思。
古希腊哲学家提出了很多关于万物本原的说法,不管是泰勒斯的水本原论,还是德谟克利特的原子论,还是恩培多克勒的水火土气本原论。
这些“本原论”中,都指出万物的本原是在事物之内,而不在事物之外,本原就是构成事物的基质。
但亚里士多德认为,如果个体事物之外,没有任何事物,所有的事物都是感觉的对象,那么就没有了思想的对象,如果没有了思想的对象,那么就不可能有知识。
因为,前面我们介绍了,亚里士多德认为,知识是来自于思维,经验才是来自于感觉的。
所以,亚里士多德认为,从这个角度看,在个体事物之外,应该还存在于某种思维的对象,而且是具有普遍性的对象,不然就不可能有知识。
02存在和一是不是万物的本原?那接下来,如果在个别事物之外,还存在着某种东西,那这种东西是一个还是多个呢?亚里士多德继续反思,如果这种东西就像是可感事物的元素一样多,那么其实就跟可感事物一样了,这也不太可能。
所以,亚里士多德认为,如果我们假设在可感事物之外,还存在其他东西,那么它们也应该存在本原,而且这个本原应该具有共同性和普遍性。
关于事物之上的本原,在柏拉图之前有两个典型说法:一个是存在,一个是一。
所以,问题就变成了,存在和一到底是不是万物的本原?03亚里士多德批判“一和存在”前面我们介绍了古希腊哲学家毕达哥拉斯提出了“数本原论”,他认为“数”是万物的本原。
现象学导论 实体
现象学导论实体现象学是一门研究现象的学科,它关注的是我们对世界的直接感知和体验。
在现象学中,实体是一个重要的概念。
实体可以指物体、事物、现象或概念等具体存在的实体对象。
本文将围绕实体展开讨论,并探讨实体在现象学中的意义和作用。
一、实体的定义和特征实体是指具体存在的事物或现象。
它具有以下特征:1) 独立存在:实体作为一个独立的存在,具有自己的特性和属性;2) 可感知性:实体可以通过我们的感知和体验来认识和理解;3) 可观察性:实体是可以被观察和研究的对象;4) 可描述性:实体可以通过语言或符号来描述和表达。
二、实体的分类实体可以根据不同的属性和特征进行分类。
例如,可以从物理实体和心理实体两个维度来进行分类。
物理实体是指具体的物体或事物,如桌子、椅子、树木等;心理实体是指人的思维、感受和意识等心理活动。
此外,实体还可以根据其本质属性、功能特征、时间和空间维度等进行分类。
三、实体在现象学中的意义实体在现象学中具有重要的意义。
首先,实体是我们对世界的直接感知和体验的对象。
通过对实体的观察和研究,我们可以认识世界,理解事物的本质和规律。
其次,实体是现象和意义的承载者。
实体不仅仅是物理存在,还具有一定的意义和价值。
通过对实体的研究,我们可以揭示事物的内在含义和价值。
最后,实体是我们进行思维和推理的基础。
在认识和表达过程中,我们需要借助实体来进行思维和推理,从而进一步认识和理解世界。
四、实体的研究方法在现象学中,研究实体需要采用特定的方法和途径。
首先,我们可以通过直接观察和感知来研究实体。
通过观察实体的外部特征和行为,我们可以获得关于实体的一些信息和认识。
其次,我们可以通过实验和测量来研究实体。
通过控制和改变实验条件,我们可以观察和记录实体的变化和响应。
再次,我们可以通过分析和归纳来研究实体。
通过对实体的属性和特征进行分析和分类,我们可以揭示实体的内在规律和本质。
五、实体在人类社会中的作用实体在人类社会中起着重要的作用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第四讲 实体的定义和使用
参数实体与一般实体的不同点: 1) 在定义参数实体时,实体名前必须加一个“%”号。 2) 参数实体引用以“%”开始,而不是一般实体引用的 “&”。
3) 参数实体的内容不仅可以包含文本,还可以包含标记。
4) 参数实体只能应用于DTD,而不能在文档本体中引用。 即参数实体只能用来构成DTD的内容,而不能构成文档内 容。
1) <!ENTITY:定义实体的指令。“ENTITY”是关键字, 必须大写。
2) %表示定义的是内部参数实体。
3) Entity_name为要定义的内部参数实体的名字。
4) Entity_content为要定义的内部参数实体的具体内容。
引用内部参数实体的语法为:
% entity_name;
2013年7月27日星期六
2013年7月27日星期六
第四讲 实体的定义和使用 4.4 内部参数实体的定义和使用
内部参数实体是指在独立的外部DTD文档的内部定义的参 数实体 。
2013年7月27日星期六
第四讲 实体的定义和使用
定义内部参数实体的语法为: <!ENTITY % entity_name “entity_content”>
5) 参数实体只能在外部DTD文档中使用,无法应用于内部 DTD。
2013年7月27日星期六
第四讲 实体的定义和使用 4.6 INCLUDE 与 IGNORE
INCLUDE:需要加入的DTD;
IGNORE:需要去除的DTD
使用INCLUDE与IGNORE标记的语法为:
<![INCLUDE [完整的DTD定义 ]]> <![IGNORE [完整的DTD定义 ]]>
“外部实体”在文档中必须通过URL才能定位,外部实体为 独立的文件,可以被多个文档所引用,具有更为广泛的共 享性。XML通过对外部实体的引用,可以在一个XML文档中 嵌入另一个XML文档,或者将多个文档组合为一个文档。
2013年7月27日星期六
第四讲 实体的定义和使用
定义外部实体的语法为: <!ENTITY entity_name SYSTEM “entity_URL”>
再见!
2013年7月27日星期六
2013年7月27日星期六
第四讲 实体的定义和使用 4.1 什么是实体
概念:实体就是包含XML文档片段的虚拟存储单元,用来存 储XML声明、DTD或各种元素的数据,它是一个事先定义好 的数据。
通用实体(一般实体):用于载入数据到XML文档的基本元 素中 。 参数实体:用于载入数据到文档的DTD中。
第四讲 实体的定义和使用
示例: <!ELEMENT 学生信息 (姓名,性别,出生日期)>
<!ELEMENT 教师信息 (姓名,性别,出生日期)>
<!ELEMENT 职工信息 (姓名,性别,出生日期)>
内部参数实体定义:
<!ENTITY % 个人信息 “(姓名,性别,出生日期)”> 内部参数实体引用: <!ELEMENT 教师信息 %个人信息;> <!ELEMENT 职工信息 %个人信息;> <!ELEMENT 学生信息 %个人信息;>
2013年7月27日星期六
第四讲 实体的定义和使用
实体引用 :
在XML文档中使用实体名字代替实体的具体内容,组成一个 结构完整的文档,这个过程称为“实体的引用”。 使用实体的好处:
1) 提高文档的书写效率,使文档外观简洁。 2) 若对文档中多次出现的内容进行修改,只需修改实体定义 部分即可。
2013年7月27日星期六
外部参数实体与外部一般实体的区别如下: 1) 外部参数实体应用于独立的DTD文档,外部一般实体应 用于XML文档。 2) 外部参数实体应用于将多个独立的DTD文档组合为一个 大的DTD文档,外部一般实体用于将多个独立的XML文 档组合成一个大的XML文档。
2013年7月27日星期六
第四讲 实体的定义和使用
2013年7月27日星期六
第四讲 实体的定义和使用
使用内部参数实体需要注意的问题是: (1)内部参数实体必须先定义后引用。 (2)在定义时“%”与实体名称之间必须有空格隔 开。
2013年7月27日星期六
第四讲 实体的定义和使用 4.5 外部参数实体的定义和使用
在独立的外部DTD文档中,可以引用其他独立DTD文档中 的定义,这种引用通过外部参数实体来实现。
2013年7月27日星期六
第四讲 实体的定义和使用
在DTD中引用内部实体时需要注意的问题: (1)被引用的内部实体的内容只能是文档内容的一部分,或 者说是字符数据,而不能包含置标。
如:<!ENTITY content "(title, chapter )"> <!ELEMENT book &content;>
(2)在定义内部实体时引用内部实体,要注意不能形成循环 引用。
如:<!ENTITY college " &province;”> <!ENTITY province “江苏省&college;" >
(3)实体在DTD中只能被其他实体定义引用,不能被元素和 属性定义所引用。
2013年7月27日星期六
第四讲 实体的定义和使用 4.3 外部实体的定义和使用
第四讲 实体的定义和使用
按实体包含内容分类:
1) 字符和数字实体:用于描述非ASCII字符。
2) 文本实体:包含一些在文档中经常出现的文本串或块。 3) 二进制实体:保存非文本数据,如图像、声音等,是一 种不可析实体。
按实体存在形式分类:
1) 内部实体:完全在文档内部定义的实体。 2) 外部实体:存在于一个外部独立文件中的实体。
使用外部实体要注意的问题:
(1)由于要引用外部文件,所以文档声明中standalone属 性的值不再是“yes”,而必须是“no” 。
(2)作为外部实体的文档,如果使用的是XML默认字符 集,如UTF-8,则可以没有XML声明;如果使用了默认字 符集以外的字符集,如“GB2312”字符集,则必须有 XML声明,且在声明中说明encoding属性 。
<!ENTITY:定义实体的指令。“ENTTTY”是关键字,必须 大写。
entity_name:要定义的实体的名字。
SYSTEM:定义外部实体的关键字。
entity_URL:能够找到该外部实体的URL地址。
文档中引用外部实体的语法: &entity_name;
2013年7月27日星期六
第四讲 实体的定义和使用
2013年7月27日星期六
第四讲 实体的定义和使用
使用INCLUDE与IGNORE需要注意的问题: (1)INCLUDE和IGNORE中包含的DTD定义必须是完整 的用尖括号括起来的定义,而不能是完整定义中的一部分。 (2)INCLUDE和IGNORE只能在DTD中使用。
2013年7月27日星期六
软件学院:数据库教研室
课件下载:ftp://10.10.22.22/
第四讲 实体的定义和使用
主讲:解志君 E-mail:junwa81@
2013年7月27日星期六
第四讲 实体的定义和使用
本章要点:
1. 什么是实体 2. 内部实体的定义和使用 3. 外部实体的定义和使用 4. 内部参数实体的定义和使用 5. 外部参数实体的定义和使用
2013年7月27日星期六
第四讲 实体的定义和使用
基本信息:(ch4-5-1.dtd)
2013年7月27日星期六
第四讲 实体的定义和使用
综合信息:(ch4-5-2.dtd)
2013年7月27日星期六
第四讲 实体的定义和使用
外部DTD文档引用:(ch4-5.dtd)
2013年7月27日星期六
第四讲 实体的定义和使用
使用外部参数实体需要注意以下几点。
1) 在外部DTD文档中引用其他DTD文档,注意不能造成 递归引用。
2) 被引用的外部DTD文档可以不是完整的DTD定义,但 一般不提倡这样。最好所有的DTD文档都是一个完整 的DTD定义。 3) 每一个外部DTD文档都必须有一个声明,说明文档所 使用的字符集。
2013年7月27日星期六
2013年7月27日星期六
第四讲 实体的定义和使用
DTD中实体定义:
2013年7月27日星期六
第四讲 实体的定义和使用
XML文档中实体引用:
2013年7月27日星期六
第四讲 实体的定义和使用
浏览器中运行的结果:
2013年7月27日星期六
第四讲 实体的定义和使用
可以在DTD中引用内部实体: 例如: <!ENTITY college “常州信息职业技术学院”> <!ENTITY department “&college;软件分院”>
第四讲 实体的定义和使用 4.7 外部非解析实体
定义外部非解析实体的语法:
<!ENTITY 实体名 SYSTEM “URL” NDATA 格式名>
NOTATION声明语法: <!NOTATION 格式名 SYSTEM / PUBLIC 应用处理程序>
引用方法:<IMG PIC=“实体名 ”>
2013年7月27日星本讲主要介绍实体的概念,以及怎样使用实体,内容包括: 1. 什么是内部实体、如何引用内部实体(一般实体);
2. 什么是参数实体,以及如何引用内部参数实体与外部参数 实体;
3. INCLUDE 与 IGNORE的定义和引用; 4. 外部非解析实体的定义和引用。
2013年7月27日星期六