ISO/IEC 29341-4-12:2008
(Main)Information technology - UPnP Device Architecture - Part 4-12: Audio Video Device Control Protocol - Level 2 - Content Directory Service
Information technology - UPnP Device Architecture - Part 4-12: Audio Video Device Control Protocol - Level 2 - Content Directory Service
Ingrid Glavich Ingrid Glavich 2 2 1995-11-10T13:27:00Z 2008-11-17T14:51:00Z 2008-11-17T14:51:00Z 1 78 449 3 1 526 10.6845 Clean 21 0 0 MicrosoftInternetExplorer4 /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman";}
ISO/IEC 29341-4-12:2008(E) enables the homeowner to browse the objects stored on the Media Server, select one and cause it to be played on a suitable rendering device. The series of ISO/IEC 29341 publications defines an architecture for pervasive peer-to-peer network connectivity of intelligent appliances, wireless devices and PCs. It is designed to bring easy to use, flexible, standards-based connectivity to ad-hoc or unmanaged networks whether in the home, in a small business, public spaces or attached to the Internet.
General Information
Standards Content (Sample)
ISO/IEC 29341-4-12
Edition 1.0 2008-11
INTERNATIONAL
STANDARD
Information technology – UPnP Device Architecture –
Part 4-12: Audio Video Device Control Protocol –
Level 2 – Content Directory Service
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form
or by any means, electronic or mechanical, including photocopying and microfilm, without permission in writing from
either IEC or IEC's member National Committee in the country of the requester.
If you have any questions about ISO/IEC copyright or have an enquiry about obtaining additional rights to this
publication, please contact the address below or your local IEC member National Committee for further information.
IEC Central Office
3, rue de Varembé
CH-1211 Geneva 20
Switzerland
Email: inmail@iec.ch
Web: www.iec.ch
About the IEC
The International Electrotechnical Commission (IEC) is the leading global organization that prepares and publishes
International Standards for all electrical, electronic and related technologies.
About IEC publications
The technical content of IEC publications is kept under constant review by the IEC. Please make sure that you have the
latest edition, a corrigenda or an amendment might have been published.
ƒ Catalogue of IEC publications: www.iec.ch/searchpub
The IEC on-line Catalogue enables you to search by a variety of criteria (reference number, text, technical committee,…).
It also gives information on projects, withdrawn and replaced publications.
ƒ IEC Just Published: www.iec.ch/online_news/justpub
Stay up to date on all new IEC publications. Just Published details twice a month all new publications released. Available
on-line and also by email.
ƒ Electropedia: www.electropedia.org
The world's leading online dictionary of electronic and electrical terms containing more than 20 000 terms and definitions
in English and French, with equivalent terms in additional languages. Also known as the International Electrotechnical
Vocabulary online.
ƒ Customer Service Centre: www.iec.ch/webstore/custserv
If you wish to give us your feedback on this publication or need further assistance, please visit the Customer Service
Centre FAQ or contact us:
Email: csc@iec.ch
Tel.: +41 22 919 02 11
Fax: +41 22 919 03 00
ISO/IEC 29341-4-12
Edition 1.0 2008-11
INTERNATIONAL
STANDARD
Information technology – UPnP Device Architecture –
Part 4-12: Audio Video Device Control Protocol –
Level 2 – Content Directory Service
INTERNATIONAL
ELECTROTECHNICAL
COMMISSION
PRICE CODE
XB
ICS 35.200 ISBN 978-2-88910-854-1
– 2 – 29341-4-12 © ISO/IEC:2008(E)
CONTENTS
FOREWORD .14
ORIGINAL UPNP DOCUMENTS (informative).16
1 Overview and Scope.18
1.1 Introduction.18
1.2 Notation .18
1.2.1 Data Types.19
1.2.2 Strings Embedded in Other Strings .19
1.2.3 Extended Backus-Naur Form.19
1.2.3.1 Typographic conventions for EBNF.19
1.3 Derived Data Types.20
1.3.1 Comma Separated Value (CSV) Lists .20
1.4 Management of XML Namespaces in Standardized DCPs .21
1.4.1 Namespace Prefix Requirements .23
1.4.2 Namespace Names, Namespace Versioning and Schema Versioning .24
1.4.3 Namespace Usage Examples.25
1.5 Vendor-defined Extensions .25
1.6 References .26
2 Service Modeling Definitions.29
2.1 Service Type.29
2.2 Terms.29
2.2.1 object.29
2.2.2 property.29
2.2.2.1 Multi-valued property.30
2.2.2.2 Single-valued property .30
2.2.3 class.30
2.2.4 item .30
2.2.5 container .30
2.2.6 container modification .30
2.2.7 XML Document .31
2.2.8 XML Fragment .31
2.2.9 ContainerUpdateID .31
2.2.10 reference, reference item, referenced item.31
2.2.11 CDS feature .32
2.3 State Variables .32
2.3.1 State Variable Overview .33
2.3.2 SearchCapabilities .34
2.3.3 SortCapabilities.34
2.3.4 SortExtensionCapabilities .34
2.3.5 SystemUpdateID.35
2.3.6 ContainerUpdateIDs .35
2.3.7 TransferIDs .36
2.3.8 FeatureList .36
2.3.9 A_ARG_TYPE_ObjectID .37
2.3.10 A_ARG_TYPE_Result .37
2.3.11 A_ARG_TYPE_SearchCriteria .37
2.3.11.1 SearchCriteria String Syntax.37
29341-4-12 © ISO/IEC:2008(E) – 3 –
2.3.11.2 SearchCriteria String Semantics and Examples .38
2.3.12 A_ARG_TYPE_BrowseFlag .39
2.3.13 A_ARG_TYPE_Filter .39
2.3.14 A_ARG_TYPE_SortCriteria .40
2.3.15 A_ARG_TYPE_Index.41
2.3.16 A_ARG_TYPE_Count.41
2.3.17 A_ARG_TYPE_UpdateID .41
2.3.18 A_ARG_TYPE_TransferID .42
2.3.19 A_ARG_TYPE_TransferStatus.42
2.3.20 A_ARG_TYPE_TransferLength.42
2.3.21 A_ARG_TYPE_TransferTotal.42
2.3.22 A_ARG_TYPE_TagValueList .42
2.3.23 A_ARG_TYPE_URI .42
2.4 Eventing and Moderation .43
2.5 Actions.44
2.5.1 GetSearchCapabilities().45
2.5.1.1 Arguments .45
2.5.1.2 Dependency on State.45
2.5.1.3 Effect on State.45
2.5.1.4 Errors.45
2.5.2 GetSortCapabilities().45
2.5.2.1 Arguments .45
2.5.2.2 Dependency on State.45
2.5.2.3 Effect on State.45
2.5.2.4 Errors.46
2.5.3 GetSortExtensionCapabilities().46
2.5.3.1 Arguments .46
2.5.3.2 Dependency on State.46
2.5.3.3 Effect on State.46
2.5.3.4 Errors.46
2.5.4 GetFeatureList().46
2.5.4.1 Arguments .46
2.5.4.2 Dependency on State.46
2.5.4.3 Effect on State.46
2.5.4.4 Errors.47
2.5.5 GetSystemUpdateID().47
2.5.5.1 Arguments .47
2.5.5.2 Dependency on State.47
2.5.5.3 Effect on State.47
2.5.5.4 Errors.47
2.5.6 Browse().47
2.5.6.1 Arguments .47
2.5.6.2 Dependency on State.48
2.5.6.3 Effect on State.48
2.5.6.4 Errors.49
2.5.7 Search() .49
2.5.7.1 Arguments .49
2.5.7.2 Dependency on State.50
2.5.7.3 Effect on State.50
– 4 – 29341-4-12 © ISO/IEC:2008(E)
2.5.7.4 Errors.50
2.5.8 CreateObject() .51
2.5.8.1 res Property Creation .51
2.5.8.2 Arguments .54
2.5.8.3 Dependency on State.54
2.5.8.4 Effect on State.54
2.5.8.5 Errors.55
2.5.9 DestroyObject().55
2.5.9.1 Arguments .56
2.5.9.2 Dependency on State.56
2.5.9.3 Effect on State.56
2.5.9.4 Errors.56
2.5.10 UpdateObject().56
2.5.10.1 Arguments .58
2.5.10.2 Dependency on State.58
2.5.10.3 Effect on State.58
2.5.10.4 Errors.59
2.5.11 MoveObject().59
2.5.11.1 Arguments .60
2.5.11.2 Dependency on State.60
2.5.11.3 Effect on State.60
2.5.11.4 Errors.61
2.5.12 ImportResource() .61
2.5.12.1 Arguments .61
2.5.12.2 Dependency on State.62
2.5.12.3 Effect on State.62
2.5.12.4 Errors.62
2.5.13 ExportResource().62
2.5.13.1 Arguments .62
2.5.13.2 Dependency on State.62
2.5.13.3 Effect on State.63
2.5.13.4 Errors.63
2.5.14 DeleteResource().63
2.5.14.1 Arguments .63
2.5.14.2 Dependency on State.64
2.5.14.3 Effect on State.64
2.5.14.4 Errors.64
2.5.15 StopTransferResource() .64
2.5.15.1 Arguments .64
2.5.15.2 Dependency on State.64
2.5.15.3 Effect on State.64
2.5.15.4 Errors.64
2.5.16 GetTransferProgress().65
2.5.16.1 Arguments .65
2.5.16.2 Dependency on State.65
2.5.16.3 Effect on State.65
2.5.16.4 Errors.65
29341-4-12 © ISO/IEC:2008(E) – 5 –
2.5.17 CreateReference() .65
2.5.17.1 Arguments .66
2.5.17.2 Dependency on State.66
2.5.17.3 Effect on State.66
2.5.17.4 Errors.66
2.5.18 Non-Standard Actions Implemented by a UPnP Vendor.66
2.5.19 Common Error Codes .67
2.6 Theory of Operation (Informative) .69
2.6.1 Introduction .69
2.6.2 Content Setup for Browsing and Searching.69
2.6.3 Browsing .69
2.6.3.1 Retrieving Sort Capabilities .70
2.6.3.2 Browsing the Root Level Metadata .70
2.6.3.3 Browsing the Children of the Root Level.71
2.6.3.4 Browsing the Children of the My Music Folder.72
2.6.3.5 Browsing the Children of the Singles Soundtrack Music Album .72
2.6.3.6 Browsing the Children of the Album Art Folder .74
2.6.4 Searching.74
2.6.4.1 Retrieving Search Capabilities .75
2.6.4.2 Search for All Content Created by the performer Sting.75
2.6.4.3 Search for all Photos Taken During the Month of October .76
2.6.4.4 Search for All Objects in the My Photos Folder Containing
the Word “Christmas” .77
2.6.4.5 Search for all album objects in the ContentDirectory service .77
2.6.5 Browsing, Searching, and References .79
2.6.5.1 Creating a reference to a photo in the Mexico Trip album inside
the Christmas album.79
2.6.5.2 Search for All Photos Taken During the Month of October.79
2.6.5.3 Deletion of the Reference to the Photo in the Mexico Trip Album .80
2.6.6 Object Creation .80
2.6.6.1 Creating a New Object .80
2.6.6.2 Example: Creating a New MusicTrack in the Album1 (@id = 10).80
2.6.7 Object Resource Binding (Importing a Resource) .81
2.6.7.1 Transfer Using the ImportResource() Action.81
2.6.7.2 Transfer Using Direct HTTP POST .82
2.6.8 Exporting ContentDirectory Resources .82
2.6.8.1 Transfer Using the ExportResource() Action .83
2.6.8.2 Transfer using HTTP GET.84
2.6.9 Playlist Manipulation .84
2.6.9.1 Playlist File Representation in the ContentDirectory Service.84
2.6.9.2 Playlist File Generation .84
2.6.10 Internet Content Representation.85
2.6.11 Bookmark Manipulation .86
2.6.11.1 bookmarkItem Example.86
2.6.11.2 Creating and Destroying Bookmarks.88
2.6.11.3 Browsing Bookmarks.92
2.6.12 Vendor Metadata Extensions.98
3 XML Service Description.99
4 Test.108
– 6 – 29341-4-12 © ISO/IEC:2008(E)
Annex A (normative) Schemas.109
A.1 DIDL-Lite .109
A.2 UPnP Elements .109
A.3 Dublin Core Subset Elements .109
A.4 FeatureList State Variable Schema.109
Annex B (normative) AV Working Committee Properties.110
B.1 Base Properties .110
B.1.1 @id.111
B.1.2 @parentID.111
B.1.3 @refID.111
B.1.4 @restricted.111
B.1.5 @searchable.111
B.1.6 @childCount .111
B.1.7 dc:title.112
B.1.8 dc:creator .112
B.1.9 res .112
B.1.10 upnp:class.112
B.1.10.1 allowedValueList for the upnp:class Property .113
B.1.10.2 upnp:class@name.114
B.1.11 upnp:searchClass .114
B.1.11.1 upnp:searchClass@name .114
B.1.11.2 upnp:searchClass@includeDerived .114
B.1.12 upnp:createClass .114
B.1.12.1 upnp:createClass@name.115
B.1.12.2 upnp:createClass@includeDerived.115
B.1.13 upnp:writeStatus .115
B.1.13.1 allowedValueList for the upnp:writeStatus Property.115
B.2 Resource Encoding Characteristics Properties.116
B.2.1 res .116
B.2.1.1 res@protocolInfo .116
B.2.1.2 res@importUri .117
B.2.1.3 res@size.117
B.2.1.4 res@duration.117
B.2.1.5 res@protection .117
B.2.1.6 res@bitrate.118
B.2.1.7 res@bitsPerSample .118
B.2.1.8 res@sampleFrequency .118
B.2.1.9 res@nrAudioChannels .118
B.2.1.10 res@resolution .118
B.2.1.11 res@colorDepth.118
B.2.1.12 res@tspec .119
B.2.1.13 res@allowedUse .119
B.2.1.14 res@validityStart .119
B.2.1.15 res@validityEnd.119
B.2.1.16 res@remainingTime .120
B.2.1.17 res@usageInfo .120
B.2.1.18 res@rightsInfoURI.120
B.2.1.19 res@contentInfoURI.120
B.2.1.20 res@recordQuality .120
29341-4-12 © ISO/IEC:2008(E) – 7 –
B.3 Contributor-related Properties .121
B.3.1 upnp:artist .121
B.3.1.1 upnp:artist@role .121
B.3.2 upnp:actor .121
B.3.2.1 upnp:actor@role.121
B.3.3 upnp:author.121
B.3.3.1 upnp:author@role.122
B.3.4 upnp:producer.122
B.3.5 upnp:director .122
B.3.6 dc:publisher.122
B.3.7 dc:contributor .122
B.4 Affiliation-related Properties .122
B.4.1 upnp:genre.123
B.4.1.1 upnp:genre@id.123
B.4.1.2 upnp:genre@extended.123
B.4.2 upnp:album .123
B.4.3 upnp:playlist .123
B.5 Associated Resources Properties .123
B.5.1 upnp:albumArtURI .124
B.5.2 upnp:artistDiscographyURI.124
B.5.3 upnp:lyricsURI.124
B.5.4 dc:relation.124
B.6 Storage-Related Properties.124
B.6.1 upnp:storageTotal .124
B.6.2 upnp:storageUsed.124
B.6.3 upnp:storageFree.125
B.6.4 upnp:storageMaxPartition.125
B.6.5 upnp:storageMedium .125
B.6.5.1 allowedValueList for the upnp:storageMedium Property .125
B.7 General Description (mainly for UI purposes) Properties.125
B.7.1 dc:description.126
B.7.2 upnp:longDescription .126
B.7.3 upnp:icon.126
B.7.4 upnp:region .126
B.7.5 upnp:rights .126
B.7.6 dc:date .126
B.7.7 dc:language.127
B.7.8 upnp:playbackCount .127
B.7.9 upnp:lastPlaybackTime.127
B.7.10 upnp:lastPlaybackPosition.127
B.7.11 upnp:recordedStartDateTime.127
B.7.12 upnp:recordedDuration .127
B.7.13 upnp:recordedDayOfWeek .128
B.7.13.1 allowedValueList for the upnp:recordedDayOfWeek Property.128
B.7.14 upnp:srsRecordScheduleID.128
B.7.15 upnp:srsRecordTaskID .128
B.7.16 upnp:recordable .128
– 8 – 29341-4-12 © ISO/IEC:2008(E)
B.8 Recorded Object-related Properties.129
B.8.1 upnp:programTitle.129
B.8.2 upnp:seriesTitle.129
B.8.3 upnp:programID .130
B.8.3.1 upnp:programID@type .130
B.8.4 upnp:seriesID.130
B.8.4.1 upnp:seriesID@type.130
B.8.5 upnp:channelID.131
B.8.5.1 upnp:channelID@type.131
B.8.6 upnp:episodeCount.131
B.8.7 upnp:episodeNumber.131
B.8.8 upnp:programCode .132
B.8.8.1 upnp:programCode@type .132
B.8.9 upnp:rating .132
B.8.9.1 upnp:rating@type .132
B.8.10 upnp:episodeType .132
B.9 User Channel and EPG Related Properties.133
B.9.1 upnp:channelGroupName.133
B.9.1.1 upnp:channelGroupName@id.133
B.9.2 upnp:callSign.133
B.9.3 upnp:networkAffiliation.134
B.9.4 upnp:serviceProvider .134
B.9.5 upnp:price .134
B.9.5.1 upnp:price@currency .134
B.9.6 upnp:payPerView.134
B.9.7 upnp:epgProviderName .134
B.9.8 upnp:dateTimeRange .134
B.10 Radio Broadcast Properties .135
B.10.1 upnp:radioCallSign.135
B.10.2 upnp:radioStationID .135
B.10.3 upnp:radioBand.135
B.10.3.1 allowedValueList for the upnp:radioBand Property.135
B.11 Video Broadcast Properties.135
B.11.1 upnp:channelNr.136
B.11.2 upnp:channelName.136
B.11.3 upnp:scheduledStartTime.136
B.11.4 upnp:scheduledEndTime .136
B.12 Physical Tuner Status-related Properties.136
B.12.1 upnp:signalStrength .137
B.12.2 upnp:signalLocked .137
B.12.3 upnp:tuned .137
B.13 Bookmark-related Properties.
...








Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.
Loading comments...