Формат параметров и выходных значений — различия между версиями
| Строка 33: | Строка 33: | ||
Четыре основных тега внутренней структуры: | Четыре основных тега внутренней структуры: | ||
| − | *'''property_simple''' | + | *'''property_simple''' |
| − | + | <property_simple key="" value="" name="" /> | |
| + | |||
| + | - элементарные свойства {key,value,name}, value и name могут отсутствовать. В целях уменьшения общего размера названия тегов и атрибутов могут быть сокращены так, что общий вид будет соответствовать | ||
| − | + | <prs k="" v="" n="">...</prs> | |
| − | |||
| − | Базовый внешний тег <data> представляет собой аналог <property_collection>. | + | *'''property_cdata''' |
| + | |||
| + | <property_cdata key="" value=""><![CDATA[...]]></property_cdata> | ||
| + | |||
| + | - полнотекстовые свойства с неизвестным заранее содержимым {key,value,*cdata_text}, value может отсутствовать. В целях уменьшения общего размера названия тегов и атрибутов могут быть сокращены так, что общий вид будет соответствовать | ||
| + | |||
| + | <prc k="" v=""><![CDATA[...]]></prc> | ||
| + | |||
| + | |||
| + | *'''property_set''' | ||
| + | |||
| + | <property_set name="" id="">...</property_set> | ||
| + | |||
| + | - набор произвольного числа property_simple и property_cdata с допустимым присутствием одного тега property_collection. В целях уменьшения общего размера названия тегов и атрибутов могут быть сокращены так, что общий вид будет соответствовать | ||
| + | |||
| + | <s n="" id="">...</s> | ||
| + | |||
| + | |||
| + | *'''property_collection''' | ||
| + | <property_collection name="" count="">...</property_collection> | ||
| + | |||
| + | - коллекция произвольного числа property_set. В целях уменьшения общего размера названия тегов и атрибутов могут быть сокращены так, что общий вид будет соответствовать | ||
| + | |||
| + | <с n="" cn="">...</c> | ||
| + | |||
| + | |||
| + | Базовый внешний тег '''<data>''' представляет собой аналог '''<property_collection>'''. | ||
Очевидна объектная модель, лежащая в основе подобным образом организованной структуры. Рекомендация: не делать различий между <span style="color:green">property_simple</span> и <span style="color:green">property_cdata</span> при парсинге XML в объекты. | Очевидна объектная модель, лежащая в основе подобным образом организованной структуры. Рекомендация: не делать различий между <span style="color:green">property_simple</span> и <span style="color:green">property_cdata</span> при парсинге XML в объекты. | ||
В статье [[Объектная модель XML-парсера|«Объектная модель XML-парсера»]] приводится объяснение и формат взаимодействия с классами, обслуживающими XML-структуру описанного образца. | В статье [[Объектная модель XML-парсера|«Объектная модель XML-парсера»]] приводится объяснение и формат взаимодействия с классами, обслуживающими XML-структуру описанного образца. | ||
Версия 11:58, 27 марта 2014
Взаимодействие осуществляется методами и callback-методами с передачей параметров простых типов (BOOL, INT, STRING). В случае необходимости передачи большого числа параметров или сложных параметров используется строковый параметр, содержащий внутри себя XML-структуру. Строка XML установленного образца по умолчанию в кодировке UTF-16. Заголовки жестко фиксированы, содержимое согласно установленной структуре тэгов и их зависимостей, но произвольно по уровням вложенности и комбинациям.
<?xml version="1.0" encoding="utf-16"?>
<oktellcommapper version="80710">
<property_set name="" id="">
<property_simple key="" value="" name="" />
.....
<property_simple key="" value="" name="" />
<property_cdata key="" value=""><![CDATA[]]></property_cdata>
.....
<property_cdata key="" value=""><![CDATA[]]></property_cdata>
<property_collection name="" count="">
<property_set name="" id="">
.....
</property_set>
.....
<property_set name="" id="">
.....
</property_set>
</property_collection>
</property_set>
.....
<property_set name="" id="">
.....
</property_set>
</oktellcommapper>
Четыре основных тега внутренней структуры:
- property_simple
<property_simple key="" value="" name="" />
- элементарные свойства {key,value,name}, value и name могут отсутствовать. В целях уменьшения общего размера названия тегов и атрибутов могут быть сокращены так, что общий вид будет соответствовать
<prs k="" v="" n="">...</prs>
- property_cdata
<property_cdata key="" value=""><![CDATA[...]]></property_cdata>
- полнотекстовые свойства с неизвестным заранее содержимым {key,value,*cdata_text}, value может отсутствовать. В целях уменьшения общего размера названия тегов и атрибутов могут быть сокращены так, что общий вид будет соответствовать
<prc k="" v=""><![CDATA[...]]></prc>
- property_set
<property_set name="" id="">...</property_set>
- набор произвольного числа property_simple и property_cdata с допустимым присутствием одного тега property_collection. В целях уменьшения общего размера названия тегов и атрибутов могут быть сокращены так, что общий вид будет соответствовать
...
- property_collection
<property_collection name="" count="">...</property_collection>
- коллекция произвольного числа property_set. В целях уменьшения общего размера названия тегов и атрибутов могут быть сокращены так, что общий вид будет соответствовать
<с n="" cn="">...</c>
Базовый внешний тег представляет собой аналог <property_collection>.
Очевидна объектная модель, лежащая в основе подобным образом организованной структуры. Рекомендация: не делать различий между property_simple и property_cdata при парсинге XML в объекты.
В статье «Объектная модель XML-парсера» приводится объяснение и формат взаимодействия с классами, обслуживающими XML-структуру описанного образца.